Este documento explica como começar a desenvolver com a API Nearby Messages em Android A API Nearby Messages é parte Google Play Services.
Etapa 1: instalar o Google Play Services
A API Nearby Messages está disponível em dispositivos Android com Google Play Services 7.8.0 ou superior. Dispositivos com o Android 2.3 ou superior com o SDK do Google O app Play Store recebe atualizações automaticamente do Google Play Services. Para verificar qual versão do Google Play Services está instalada no dispositivo, acesse Configurações > Aplicativos > Google Play Services.
Verifique se você tem a biblioteca de cliente mais recente do Google Play Services no seu host de desenvolvimento:
- Abra o Android SDK Manager.
Em Aparência e Comportamento > Configurações do sistema > SDK do Android > Ferramentas do SDK, verifique se os seguintes pacotes estão instalados:
- Google Play Services
- Repositório do Google
Etapa 2: crie uma Conta do Google
Para usar as APIs do Nearby Messages, você precisa de uma Conta do Google. Dessa forma, você, desenvolvedor, pode ativar a API Nearby nos próximos etapa (seus usuários não precisarão ter uma Conta do Google). Se você já tem uma conta, então está tudo pronto. Você também pode querer uma uma Conta do Google separada para fins de teste.
Etapa 3: gerar uma chave de API
Siga estas etapas para ativar a API Google Nearby Messages para Android e ter uma chave de API:
- Vá para a Google Developers Console.
- Crie ou selecione um projeto para registrar seu aplicativo.
- Clique em Continuar para ativar a API.
- Na página Credenciais, crie uma nova chave do Android e configure a API
Credenciais).
Observação: se você já tem uma chave Android, é possível usá-la. - Na caixa de diálogo exibida, insira a impressão digital SHA-1 do app.
e nome do pacote. Por exemplo:
BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75
com.example.android.nearbyexample
- A nova chave de API do Android aparece na lista de chaves de API do projeto.
Uma chave de API é uma string de caracteres semelhante a esta:
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
Conseguir a impressão digital SHA1 do seu certificado
Para criar uma nova chave de API para seu app Android, é necessário ter a impressão digital SHA1 do certificado usado para assinar o APK. Só é possível trocar mensagens entre apps assinados com chaves de API do mesmo projeto.
Para obter essa impressão digital:
- Encontre o local do seu keystore.
- Em um terminal, execute o utilitário
keytool
no JDK. Para exemplo, se você estiver usando o keystore`debug`
: - A saída do comando
keytool
contém o SHA1. impressão digital para o certificado.
$ keytool -alias \ androiddebugkey -keystore \ ~/.android/debug.keystore -list -v
Observação: para o keystore de depuração, a senha é
android
No Mac OS e Linux, o keystore de depuração geralmente é
localizado em ~/.android/
. No Windows,
normalmente fica em %USERPROFILE%\
.
Etapa 4: configurar o projeto
O Android Studio facilita
fácil criar um projeto para a API Nearby Messages. Siga as etapas descritas
em Como criar um projeto
para criar um novo projeto. No Android Studio, abra o arquivo build.gradle
de
seu módulo e adicione a biblioteca de cliente do Google Play Services como dependência:
apply plugin: 'android' ... dependencies { compile 'com.google.android.gms:play-services-nearby:19.3.0' }
Em seguida, configure o manifesto com a chave de API gerada na etapa anterior:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.sample.app" >
<application ...>
<meta-data
android:name="com.google.android.nearby.messages.API_KEY"
android:value="API_KEY" />
<activity>
...
</activity>
</application>
</manifest>
Etapa 5: publicar e assinar
No app, comece a usar a API Nearby Messages.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
mMessageListener = new MessageListener() {
@Override
public void onFound(Message message) {
Log.d(TAG, "Found message: " + new String(message.getContent()));
}
@Override
public void onLost(Message message) {
Log.d(TAG, "Lost sight of message: " + new String(message.getContent()));
}
}
mMessage = new Message("Hello World".getBytes());
}
@Override
public void onStart() {
super.onStart();
...
Nearby.getMessagesClient(this).publish(mMessage);
Nearby.getMessagesClient(this).subscribe(mMessageListener);
}
@Override
public void onStop() {
Nearby.getMessagesClient(this).unpublish(mMessage);
Nearby.getMessagesClient(this).unsubscribe(mMessageListener);
...
super.onStop();
}
A API Nearby Messages requer o consentimento do usuário. Ao publicar ou assinar é invocado pela primeira vez, o Nearby mostrará uma caixa de diálogo de ativação.