Configuração
Criar um novo projeto
Após o cliente ter sido registrado, você pode começar a criar seu próprio aplicativo Android.
Na linha de comando, vá para o diretório onde deseja criar o projeto móvel e execute o seguinte comando.
Criação de zohoandroid
Isso solicitará as seguintes entradas do usuário.
- Nome do aplicativo móvel (por exemplo, Aprovador de Oportunidades).
- O nome do pacote Java desejado para o aplicativo móvel (por exemplo, com.zoho.test).
- ID do cliente Zoho OAuth (obtido durante o registro do aplicativo).
- Segredo do cliente Zoho OAuth (obtido durante o registro do aplicativo).
- URL de redirecionamento do Zoho OAuth (obtido durante o registro do aplicativo).
Na execução bem-sucedida do comando acima, uma pasta de projeto será criada no mesmo diretório. O nome da pasta do projeto será igual ao nome do aplicativo móvel.
Nota:
- Por padrão, os aplicativos criados são compilados e destinados à API Android de nível 26 (Oreo). No entanto, você pode alterar isso para seu nível de API necessário no build.gradle do aplicativo.
- Além disso, observe que mudar os níveis de API podem demandar a necessidade de lidar com qualquer dependência ausente para o novo nível de API.
Executar o projeto
O projeto recentemente criado é, na verdade, uma demonstração do aplicativo Android que pode ser executada instantaneamente usando o Android Studio.
- Abra o Android Studio.
- Clique em Arquivo > Novo > Importar Projeto e escolha a pasta do projeto recentemente criado e clique em Abrir.
O aplicativo de demonstração recém-criado será aberto como um projeto Android. - Instale todas as dependências ausentes, conforme recomendado pelo Gradle, se necessário.
- Após a criação bem-sucedida do Gradle, execute esse projeto em um emulador.
O aplicativo será aberto com uma tela de login da Zoho no emulador. - Faça log-in com suas credenciais do Zoho CRM e exiba seus dados com o aplicativo de demonstração.
Estender o aplicativo
Depois que o projeto tiver sido criado e executado com êxito, você poderá projetar e criar novas telas e funcionalidades para o aplicativo conforme as suas necessidades. Não há restrições de front-end no desenvolvimento do aplicativo. No entanto, para facilitar a autenticação de usuário, certifique-se de observar os seguintes pontos ao projetar o aplicativo.
Para lidar com o login/logout:
- Para lidar adequadamente com o login de usuário, inicie a atividade que já está configurada no SDK para garantir que somente os usuários conectados possam exibir os dados dos aplicativos.
- No entanto, se você deseja mostrar sua própria tela de login personalizada, forneça seu pacote de classe de login personalizado a customLoginActivityClass em app_configuration.properties. abrimos o customLoginClass como uma atividade de iniciador, sem a necessidade de mencionar essa classe como o iniciador em seu manifesto. Para garantir a funcionalidade otimizada, verifique se está iniciando a intenção ZCRMLoginActivity da sua atividade de inicialização personalizada para iniciar o processo de login.
- Durante a gravação de uma atividade de inicialização personalizada, certifique-se de não fazer chamadas para o Zoho CRM sem chamar ZCRMLoginActivity.
- Para lidar com o logout do usuário, a atividade onde a chamada onClick do botão de logout é manipulada deve estender o ZCRMBaseActivity e seu método onClick deve chamar super.logout().
No arquivo app_configuration.properties:
- mainActivityClass (obrigatório) - faça referência ao seu pacote de classe principal (a classe que inicia após a atividade de login)
- oauthScopes (obrigatório) - os escopos de exemplos já são mencionados no arquivo de propriedade criado, você pode alterar os escopos conforme a sua necessidade. Saiba mais
- accessType (opcional) - tipo de ambiente no CRM
- Produção - ambiente que tem usuários de pagamento ativo acessando dados de negócios críticos.
- Desenvolvimento - ambientes onde é possível estender, integrar e desenvolver sem afetar os ambientes de produção.
- Sandbox - ambientes especificamente usados para testar a funcionalidade do aplicativo antes de implantar a produção ou liberação para clientes.
- minLogLevel (opcional) - faça referência ao seu nível de registro preferido aqui (TODOS , SUPERIOR , TRAÇO , DEPURAÇÃO , CONFIGURAÇÃO , INFORMAÇÕES , AVISO , ERRO , DESLIGADO).
- domainSuffix (opcional) - Suporte Multi DC.
- eua - www.zohoapis.com
- ue - www.zohoapis.eu
- cn - www.zohoapis.com.cn
- portalID (opcional) - faça referência ao ID do portal CRM (por exemplo: 65468393). Não é preciso mencionar "portalID" dentro do arquivo de propriedades, caso ainda não tenha um.
- showSignUp (opcional) - forneça o valor como true , se você fornecer facilidade de inscrição no aplicativo; caso contrário, forneça false.
- customLoginActivityClass(opcional) - faça referência ao pacote de classe de atividade do inicializador. Nessa classe de inicializador, você pode personalizar o seu login ao iniciar a intenção de classe ZCRMLoginActivity.
app_configuration.properties
Esse arquivo contém certos valores de configuração necessários para executar o aplicativo. Não altere os nomes ou valores de propriedade existentes, já que eles são necessários para o funcionamento otimizado do SDK e do aplicativo.
O arquivo estará disponível no caminho a seguir:
início do projeto > aplicativo > src > principal > ativos > app_configuration.properties.
Você também pode adicionar todas as suas próprias propriedades e valores, se necessário. Chamar ZCRMSDKConfigUtil.getConfigValue(propertyName); em qualquer parte do seu código Java após a inicialização do aplicativo fornecerá os valores das propriedades adicionados a esse arquivo.
Wrappers de API do Zoho CRM
Para acesso fácil aos dados pelos APIs restantes do Zoho CRM, os SDKs de API integrados para o Zoho CRM devem ser usados para acessar dados do CRM pelas APIs. Essa camada cuida da sua autenticação de API (gerando e atualizando tokens de acesso OAuth), de estruturas de respostas e solicitações da API e retorna objetos Java que criam pacotes de respostas da API.
Portanto, uma chamada de API seria apenas uma chamada de método para o aplicativo do cliente.
Consulte a seção de Hierarquia de classe da documentação de SDK Java do Zoho CRM.
Wrappers de acesso a dados de SDK
Além do agrupamento de APIs do Zoho CRM acima, para evitar chamadas desnecessárias de API, os metadados de módulo essenciais são armazenados em cache pelo SDK no armazenamento local do dispositivo.
Atualmente, dados do CRM (registros) não são armazenados em cache e somente os metadados de módulos, como detalhes de layouts, seções, campos e de exibição personalizada são armazenados em cache.
ZCRMCachedModule
O armazenamento em cache de alguns metadados adicionais é feito pelo ZCRMCachedModule. Isso estende a classe ZCRMModule da biblioteca do cliente da API do Zoho CRM. Essa classe fornece os métodos a seguir.
- getLayouts - retorna todos os layouts do módulo como um BulkAPIResponse.
- getCustomViews - retorna todos os detalhes da exibição personalizada do módulo como BulkAPIResponse.
Atualização do cache
ZCRMCachedModule armazena e usa as informações de metadados de módulos e layouts armazenados em cache no armazenamento local do dispositivo. O SDK atualiza os metadados armazenados de um módulo para cada 12 horas.
Nesse caso, você deseja forçar o SDK a soltar o cache (por exemplo: se você pretende fornecer algo como um deslize para atualizar em seu aplicativo) e atualizar os metadados por uma chamada de API do Zoho CRM, você pode forçá-lo configurando o indicador refreshCache fornecido nas versões sobrecarregadas dos métodos acima. Um exemplo de chamada é fornecido abaixo.
zcrmCachedModuleObj.getAllLayouts(true);
zcrmCachedModuleObj.getCustomViews(true);