Google Awareness API
請記住, Snapshot API 用於請求當前狀態,而 Fence API 會持續檢查指定狀態,並在應用程式未執行時傳送回撥。
總的來說,使用 Snapshot API 或 Fence API 有幾個基本步驟:
- 
從 Google Developers Console 獲取 API 金鑰
 - 
向清單新增必要的許可權和 API 金鑰:
<!-- Not required for getting current headphone state --> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <!-- Only required for actvity recognition --> <uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION"/> <!-- Replace with your actual API key from console --> <meta-data android:name="com.google.android.awareness.API_KEY" android:value="YOUR_API_KEY"/> <!-- Required for Snapshot API only --> <meta-data android:name="com.google.android.geo.API_KEY" android:value="YOUR_API_KEY"/> - 
初始化
GoogleApiClient,最好是在你的活動的onCreate()方法中。GoogleApiClient client = new GoogleApiClient.Builder(context) .addApi(Awareness.API) .build(); client.connect(); - 
呼叫你選擇的 API
 - 
解析結果
 
檢查所需使用者許可權的簡單方法是這樣的方法:
private boolean isFineLocationGranted() {
    if (ActivityCompat.checkSelfPermission(context, Manifest.permission.ACCESS_FINE_LOCATION)
                != PackageManager.PERMISSION_GRANTED) {
        Log.e(getClass().getSimpleName(), "Fine location permission not granted!");
    }
}