Simples aplicação que lista cartas do jogo Heart Of Stone e permite vizualizar alguns detalhes ao seleciona-la.
O projeto consome a api da Blizzard, é necessário registrar-se e criar um Client app
para gerar o ClientID
e o ClientSecret
.
Para mais informações siga o link: Blizzard Develop Access
Por questões de segurança as chaves da API NÃO ESTÃO no projeto.
Para excutar o projeto, será necessário criar uma classe ou struct que conforma com a interface KeyAdvisor
, e através dela, passar as chaves pelas propriedades.
O arquivo está sendo ignorado pelo .gitignore, e criado um novo no caminho:
source/app/supportfiles/secret/KeysAcessor.swift
A implementação concreta que usei no projeto, pode ser copiada abaixo:
struct KeysAcessor: KeyAdvisor {
var publicKeyApi: String {
"publicApiKey aqui!"
}
var privateKeyApi: String {
"privateApiKey aqui!"
}
}
Para instalar e utilizar os recursos deste projeto, siga os passos abaixo.
Sobre o projeto:
- Xcode Version 11.3.1 (11C504) (ou superior)
- Suporte mínimo ao iOS 10
- Swift 5
- Cobertura de código: 42.49%
Ferramentas de Gestão e Qualidade de Código
- Fastlane
- Xcov
- Jazzy
- Swiftlint
Gerenciador de Dependências
- Swift Package Manager
Foi utilizado a versão do Ruby 2.7.0 no uso das ferramentas de gestão e qualidade.
Instale o RVM com o seguinte comando:
\curl -sSL https://get.rvm.io | bash -s stable
Após a instalação, utilize o seguinte comando para usar a versão 2.7.0 do Ruby:
rvm install 2.7.0
Depois use o comando:
rvm use 2.7.0
Instale o brew com o seguinte comando:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Após instalados o RVM com a versão indicada do Ruby, e a instalação do Brew, execute os seguintes comandos
brew bundle
Irá instalar as dependencias listadas no arquivo Brewfile
.
Após a conclusão das instalaçoes feitas com brew, execute o comando a baixo para instalar as dependencias do Gemfile:
bundle install
No Xcode atualize as dependencias usando o Swift Package Manager
Usado para automatizar tarefas como execucao de testes unitários, assinatura projetos e envio para Loja e Testflight.
No projeto, já possi alguns lanes básicos configurados. Para usa-los, execute um dos comandos abaixo:
-
Check code style
fastlane ios lint_code
-
Create coverage report
fastlane ios coverage
-
Used by Development to keep code quality.
fastlane ios check_code
oufastlane check_code dev:true
Ver mais no link: Fastlane
Ferramenta para documentação de código
Ver mais no link: Realm/jazzy
Ferramenta para exibir de forma mais amigável informações de cobertura de código do projeto.
Ver mais no link: Xcov
Tiago Amaral iOS Developer.