0

Ich möchte eine der neuen Funktionen von Android 8.0 Oreo verwenden: die onRangeStart Methode der UtteranceProgressListener Klasse. Es scheint jedoch nicht auf älteren Geräten (Android 6.0 Marshmallow) zu funktionieren, selbst wenn das neueste Google TTS APK installiert ist.Verwenden Sie neuere API in älteren Gerät

Ist das normal? Android Studio zwingt mich nicht, eine API-Versionsüberprüfung durchzuführen, also ging ich davon aus, dass es bei allen Android-Versionen funktionieren würde. Wäre es möglich, mich zu hacken, um eine ähnliche Funktion zu haben, da die Google TTS App jetzt die rangeStart Methode verwendet? Mit dem Xposed Framework vielleicht? (Würde ich das dürfen?)

+1

"Ist das normal?" - Wenn mit "it" meinten Sie "das Android SDK fügt neue Klassen und Methoden mit jeder API-Ebene hinzu", dann ist es ja normal. "Da die Google TTS App jetzt die Methode rangeStart verwendet?" - Ich bezweifle, dass es 'onRangeStart()' auf älteren Android-Versionen verwendet. Diese Methode existiert nicht, und auch nichts im Framework scheint diese Methode in älteren Versionen von Android zu verwenden, basierend auf [einer Suche in der Android 7.1-Quelle] (http://aosp.opersys.com/xref/android-7.1) .2_r33/suche? Q = onRangeStart & defs = & refs = & pfad = & hist = & type = & projekt = rahmenwerke). – CommonsWare

+0

Ich wollte fragen, ist es normal, dass ich es nicht benutzen kann, habe ich meine Antwort dann. Wenn ich mir den neuesten APK-Quelltext der Google TTS-Engine anschaue, kann ich sehen, dass dies Aufrufe von 'rangeStart' ist, aber es muss eine leere Methode sein, da sie nicht im 7.1-Framework enthalten ist. – natinusala

+0

Beachten Sie auch, dass Sie 'onRangeStart()' mit 'rangeStart()' zusammenfassen können. – CommonsWare

Antwort

0

Android Studio wird Sie dazu zwingen, API-Version checs in den zukünftigen stabilen Versionen zu tun.

Verwandte Themen