Android Wearable: guida introduttiva

A partire dalla versione 4.5 dell'SDK per Android, è stata aggiunta una nuova estensione Android che consente di raccogliere dati dall'applicazione Android Wearable.

Configurare l'SDK per un'app Handheld (Android Studio)

Per ulteriori informazioni sull’importazione dell’SDK nel progetto, consulta Implementazione e ciclo di vita di base.

  1. Aggiungi il file ADBMobileConfig.json alla cartella delle risorse del progetto.

  2. Aggiungi il file adobeMobileLibrary-*.jar alla cartella libs oppure accertati che il progetto faccia riferimento a tale file.

    SUGGERIMENTO

    Potrebbe essere necessario sincronizzare il progetto gradle dopo l’aggiunta del file .jar.

  3. Nel metodo onCreate, consenti all'SDK di accedere al contesto dell'applicazione utilizzando Config.setContext:

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
    
        // Allow the SDK access to the application context 
        Config.setContext(this.getApplicationContext()); 
    }
    
  4. Aggiungi il codice seguente al file AndroidManifest.xml:

        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
        <uses-permission android:name="android.permission.INTERNET" /> 
        <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    
    <application> 
    ....... 
    <meta-data android:name="com.google.android.gms.version" 
                android:value="@integer/google_play_services_version" /> 
    </application>
    
  5. Accertati che nel tuo progetto sia inclusa la libreria di Google Play Services.

  6. Implementa WearableListenerService oppure aggiungi il codice corrispondente al tuo WearableListenerService:

    public class WearListenerService extends WearableListenerService { 
    
        @Override 
        public void onMessageReceived(MessageEvent messageEvent) { 
            super.onMessageReceived(messageEvent); 
        } 
    
        private GoogleApiClient mGoogleApiClient; 
    
        @Override 
        public void onCreate() { 
            super.onCreate(); 
            mGoogleApiClient = new GoogleApiClient.Builder(this) 
                    .addApi(Wearable.API) 
                    .build(); 
            mGoogleApiClient.connect(); 
        } 
        @Override 
        public void onDestroy() { 
            super.onDestroy(); 
            mGoogleApiClient.disconnect(); 
        } 
    
        @Override 
        public void onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) { 
            DataListenerHandheld.onDataChanged(dataEvents, mGoogleApiClient, this); 
        } 
    }
    
  7. Aggiungi WearListenerService al file AndroidManifest.xml:

    If you are using Google Play Services  < 8.2 
    <application> 
        ...... 
         <service 
                android:name=".WearListenerService" > 
                <intent-filter> 
                    <action android:name="com.google.android.gms.wearable.BIND_LISTENER" /> 
                </intent-filter> 
        </service> 
    </application> 
    If you are using Google Play Services >= 8.2 
    <application> 
        ...... 
         <service 
                android:name=".WearListenerService" > 
                <intent-filter> 
                      <action android:name="com.google.android.gms.wearable.DATA_CHANGED" /> 
                     <data android:scheme="wear" android:host="*" android:pathPrefix="/abdmobile" /> 
                </intent-filter> 
        </service> 
    </application> 
    
    Please find more information from google's blog https://android-developers.googleblog.com/2016/04/deprecation-of-bindlistener.html. 
    Permalink Edit
    

Configurazione dell'SDK per un'app Wearable (Android Studio)

  1. Completa una delle seguenti attività:

    • Aggiungi lo stesso file ADBMobileConfig.json alla cartella delle risorse del progetto wearable.

    • Modifica la configurazione gradle affinché utilizzi il file ADBMobileConfig.json nella cartella delle risorse dell'app handheld:

      android { 
      
          sourceSets { 
              main { 
                  assets.srcDirs = ['src/main/assets','../mobile/src/main/assets'] 
              } 
         } 
      }
      
  2. Aggiungi il fileadobeMobileLibrary-*.jar alla cartella libs oppure accertati che il progetto vi faccia riferimento.

    Potrebbe essere necessario sincronizzare il progetto gradle dopo l'aggiunta del file .jar.

  3. Nel metodo onCreate, consenti all'SDK di accedere al contesto dell'applicazione utilizzando Config.setContext:

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main);      
        // Allow the SDK access to the application context 
        Config.setContext(this.getApplicationContext(), Config.ApplicationType.APPLICATION_TYPE_WEARABLE); 
    }
    
  4. Aggiungi il codice seguente a AndroidManifest.xml:

    <application> 
    ....... 
    <meta-data android:name="com.google.android.gms.version" 
                android:value="@integer/google_play_services_version" /> 
    </application>
    
  5. Accertati che nel tuo progetto sia inclusa la libreria di Google Play Services.

  6. Implementa WearableListenerService oppure aggiungi il codice corrispondente al tuo WearableListenerService:

    public class WearListenerService extends WearableListenerService { 
    
        @Override 
        public void onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) { 
            DataListenerWearable.onDataChanged(dataEvents); 
        } 
    
    }
    
  7. Aggiungi WearListenerService al file AndroidManifest.xml:

    If you are using Google Play Services  < 8.2 
    <application> 
        ...... 
         <service 
                android:name=".WearListenerService" > 
                <intent-filter> 
                    <action android:name="com.google.android.gms.wearable.BIND_LISTENER" /> 
                </intent-filter> 
        </service> 
    </application> 
    If you are using Google Play Services >= 8.2 
    <application> 
        ...... 
         <service 
                android:name=".WearListenerService" > 
                <intent-filter> 
                      <action android:name="com.google.android.gms.wearable.DATA_CHANGED" /> 
                     <data android:scheme="wear" android:host="*" android:pathPrefix="/abdmobile" /> 
                </intent-filter> 
        </service> 
    </application> 
    Please find more information from google's blog https://android-developers.googleblog.com/2016/04/deprecation-of-bindlistener.html. 
    Permalink Edit
    

In questa pagina