2016-06-10 16 views
0

Ich habe ein Android Wear App, die eine FragmentActivity enthält:Wie aktiviert man den Ambient-Modus (Always On) in einer FragmentActivity auf einer Android Wear App?

public class MyFragmentActivity extends FragmentActivity 

Mit 2 Fragmente:

public class MyFirstFragment extends Fragment 

und

public class MySecondFragment extends Fragment 

ich den Umgebungsmodus (immer) aktiviert werden soll in dieser Fragmentaktivität. Gemäß der documentation ist der Umgebungsmodus jedoch nur verfügbar, wenn ich WearableActivity erweitere.

Gibt es eine Möglichkeit, beide Eigenschaften des WearableActivity zusammen in einem zu haben?

oder

Gibt es eine andere Möglichkeit, den Umgebungsmodus im FragmentActivity zu aktivieren?

Antwort

2

Antwort auf beide Fragen ist keine, sorry.

Der Umgebungsmodus wird durch Aufrufen von WearableActivity.setUseAmbient() aktiviert, was offensichtlich nicht verfügbar ist, wenn Sie nicht WearableActivity erweitern. Und da Java keine Mehrfachvererbung unterstützt, können Sie die Klassen WearableActivity und nicht zur gleichen Zeit ableiten - es ist das eine oder das andere.

Müssen Sie wirklich Fragmente für eine Uhraktivität verwenden? Wenn Sie den Umgebungsmodus wirklich unterstützen möchten, müssen Sie wahrscheinlich Ihre Benutzeroberfläche aus Fragmenten entfernen.

0

Sie sollten AmbientMode.AmbientCallbackProvider statt WearableActivity implementieren, dann können Sie stattdessen FragmentActivity erweitern.

Es ist die neue bevorzugte Methode und es gibt Ihnen immer noch alle Goodies, die Sie mit WearableActivity bekommen haben, aber Sie können auch Activity (oder irgendeine Unterklasse ... FragementActivity, etc.) verwenden.

Official docs call out the details (and example code).