Ich möchte in der Lage sein, den aktuellen Standort und die Aktivität in meiner Android App zu bekommen. Ich habe es implementiert, aber es scheint nie etwas zurückzugeben. Wenn ich debugge, ruft es nie OnResult-Methode auf. Es gibt nur nichts zurück. Zum Beispiel sollte im unteren Code die aktuelle Benutzeraktivität als I/Awareness: DetectedActivity [type = STILL, confidence = 100] zurückgegeben werden, aber es wird nichts angezeigt.Awareness Snapshot APi funktioniert nicht für Android
Ich teste dies auf Android v6.0 und ja, die genaue Position ist in meinem Manifest und auf meinem Telefon eingeschaltet.
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
Hier ist mein Code für das Erhalten der Aktivität:
public class MainActivity extends AppCompatActivity {
private static final String TAG = "Awareness";
private GoogleApiClient mGoogleApiClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mGoogleApiClient = new GoogleApiClient.Builder(MainActivity.this)
.addApi(Awareness.API)
.build();
mGoogleApiClient.connect();
}
private void initSnapshots() {
Awareness.SnapshotApi.getDetectedActivity(mGoogleApiClient)
.setResultCallback(new ResultCallback<DetectedActivityResult>() {
@Override
public void onResult(@NonNull DetectedActivityResult detectedActivityResult) {
if (!detectedActivityResult.getStatus().isSuccess()) {
Log.e(TAG, "Could not get the current activity.");
return;
}
ActivityRecognitionResult ar = detectedActivityResult.getActivityRecognitionResult();
DetectedActivity probableActivity = ar.getMostProbableActivity();
Log.i(TAG, probableActivity.toString());
}
});
}
}
ich auch diesen Link folgen bin: https://inthecheesefactory.com/blog/google-awareness-api-in-action/en
Ja Ich habe den API-Schlüssel in meine Manifest-Datei hinzugefügt. Dieser Code funktioniert mit Moto x, aber wenn ich versuche, es mit Nexus 6p zu laufen, funktioniert es nicht – user1380637
Ist Ihr Nexus-Telefon auf Lager rom, oder zB Cyanogenmod? Ich habe das gleiche Problem, aber wenn es nicht funktioniert, ist es mit cm rom. – Totoo