SHIFT-Actions 1.0.13: "Toggle airplane mode" Action fehlt

da_ni

Active member
Original poster
28 April 2025
161
Habe vor ein paar Tagen das Update auf SHIFT-Actions 1.0.13 installiert. Das Changelog sagt:
- Connectivity
- Add "Toggle airplane mode" action

Diese Option kann ich in den App-Einstellungen jedoch nicht finden (alle anderen sind, soweit ich das sehen kann vorhanden). Installiert ist ShiftOS 7.0.L.20250819.

Besonderheit: Im Phone befindet sich momentan keine SIM, da ich auf Ersatz warte. Kann es daran liegen, @amartinz?
 
  • Like
Reaktionen: R.E.D.
Lösung
Damit das funktioniert, muss die App die Berechtigung android.permission.WRITE_SECURE_SETTINGS haben.

Diese bekommt sie nur über das Update nicht.
Erst mit dem nächsten OTA ist die Berechtigung wirklich aktiv und dann wird die Aktion angezeigt.

Note: some actions might not be visible until you meet the requirements.
For example proper permissions or a certain system version.
Damit das funktioniert, muss die App die Berechtigung android.permission.WRITE_SECURE_SETTINGS haben.

Diese bekommt sie nur über das Update nicht.
Erst mit dem nächsten OTA ist die Berechtigung wirklich aktiv und dann wird die Aktion angezeigt.

Note: some actions might not be visible until you meet the requirements.
For example proper permissions or a certain system version.
 
  • Like
Reaktionen: R.E.D.
Danke, @amartinz. System ist aktuell und der App sind alle Berechtigungen erteilt, daher ließ sich aus

Note: some actions might not be visible until you meet the requirements.
For example proper permissions or a certain system version.

nicht auf die Ursache schliessen. Habe der App nun selbst die

android.permission.WRITE_SECURE_SETTINGS

Berechtigung erteilt. Dann taucht die Option tatsächlich auf.

Wer Abenteuer mag und das selbst auch machen will:

adb shell pm grant eco.shift.apps.actions android.permission.WRITE_SECURE_SETTINGS
 
System ist aktuell und der App sind alle Berechtigungen erteilt
Das aktuellste ShiftOS-L beinhaltet 1.0.11 vorinstalliert, welche noch nicht die Berechtigung anfordert und sie deswegen auch nicht erteilt wird.

WRITE_SECURE_SETTINGS ist eine interne, verstecke Berechtigung, welche nur via gewisse Konfigurationen erteilt werden kann.
Heißt: im nächsten ShiftOS-L OTA ist das dann drinnen.
 
Hallo nochmal, @amartinz! Wie ich geschrieben hatte, habe ich der App under OS-L 7.0.L.20250819 die notwendige Berechtigung über ADB selbst erteilt und kann die Toggle Airplane Mode Action damit testen. Funktioniert, aber ein kleriner Schönheitsfehler ist mir aufgefallen, den ich hier berichte, damit dieser ggf. im nächsten OTA mit behoben werden kann:

Der Status der Airplane Mode Tile in den Schnelleinstellungen wird durch die Toggle Airplane Mode Action korrekt geschaltet. Das korrespondierende Icon im Statusbar dagegen wird nicht geschaltet:
Wird Airplane Mode über die Action aktiviert, erscheint kein Icon in der Statuszeile.
War Airplane Mode über Tap auf die Quick Settings Tile bereits aktiviert und das entsprechende Symbol im Statusbar eingeblendet, dann führt eine Deaktivierung des Airplane Mode über die Action dazu, dass das Symbol eingeblendet bleibt / nicht verschwindet.
In beiden Fällen sieht man zwar, dass irgendwas in der Statuszeile passiert (die Position der Symbole ändert sich minimal), aber sichtbar ist nichts.
Wird Airplane Mode über die Quick Settings Tile de-/aktiviert, verhält sich das entsprechende Statuszeilensymbol normal.

Falls das im kommenden September OTA schon berücksichtigt / gefixt ist, bitte einfach ignorieren.
 
Wer Abenteuer mag und das selbst auch machen will:

adb shell pm grant eco.shift.apps.actions android.permission.WRITE_SECURE_SETTINGS
Ich wollte es jetzt auch testen (um auch deinen Bug bestätigen zu können) aber das hat bei mir nicht geklappt.
Ich bin ja mit ADB noch recht unerfahren ,aber kann es vielleicht sein ,dass ich in dem Befehl noch irgendwo Anführungszeichen ( " " ) oder so setzen müsste?
 
Habs gerade nochmal überprüft, Befehl funktioniert hier genau so wie angegeben.

Code:
adb shell pm grant eco.shift.apps.actions android.permission.WRITE_SECURE_SETTINGS

zum Setzen der Berechtigung, und

Code:
adb shell pm revoke eco.shift.apps.actions android.permission.WRITE_SECURE_SETTINGS

zum Widerrufen.
 
Zuletzt bearbeitet:
Bei mir kommt dann :

Exception occurred while executing 'grant' :
java.lang. IllegalArgumentException : Unknown premisson android.premission. WRITE_SECURE_SETTINGS.......

(ich hab es an meinem MiniPC mit Windows 11 25h2 gemacht ,falls das eine Rolle spielen könnte)
 
Funktioniert, aber ein kleriner Schönheitsfehler ist mir aufgefallen, den ich hier berichte, damit dieser ggf. im nächsten OTA mit behoben werden kann:
Ich selbst kann hier einen "großen" Schönheitsfehler reproduzieren (ShiftOS-L 7.0 vom 19.08.).

In der Statusleiste (und im Quicksetting-Icon) wird zwar sichtbar in den Flugmodus geschaltet, aber lediglich Bluetooth wird getrennt. Der Rest der Verbindungen bleibt aktiv.

Wenn ich den Flugmodus manuell in der Schnelleinstellung aktiviere wird alles abgeschaltet.

Schalte ich manuell in den Flugmodus und dann über den Key aus, wird nur Bluetooth wieder aktiviert, GPS, WLAN und Mobile Daten bleiben aus.

Greetz
 
  • Like
Reaktionen: da_ni
Oh man bin ich ein Depp! 😅 - Ich dachte eigentlich ,dass ich mich mittlerweile an die Aussprache der Stimme meines Shift 8 gewöhnt hätte.
Ich hab es mir so oft angehört (am PC & Handy) ,aber bin nicht drauf gekommen.🙈 Danke 👍

Befehl hat nun natürlich funktioniert und die Einstellung ist da.

Auch bei mir - wenn ich z. B. den Flugmodus über den Carsten Key deaktiviere ,kommt meine Netzanzeige (Mobilfunk) aber das Flugzeug bleibt.
Wenn ich ihn über den Key aktiviere verschwindet die Netzanzeige aber das Flugzeug kommt nicht.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: da_ni
Wenn ihr wirklich so testfreudig seid, könnt ihr gerne diese APK ausprobieren :D

Ist eine Version, die sich noch in Entwicklung befindet, aber einen alternativen Weg nutzt, um den Flugzeug Modus umzuschalten.

Der sollte theoretisch auch ohne Systemupdate klappen.

Wenn nicht, dann müsst ihr leider doch noch auf das neue OTA warten :)
(Deswegen verstecken sich einige Aktionen auch, obwohl ich in den Changelog schreibe, dass neue dazugekommen sind)
 

Anhänge

Der sollte theoretisch auch ohne Systemupdate klappen.
Danke Dir 👍

Da werden wir aber wohl auf das OTA warten müssen ,denn hier is die Einstellung zwar auch da ,aber bei drücken des Carsten Keys (Doppel tippen für Flugmodus) passiert erstmal gar nichts.

oder gibt es da jetz vielleicht einen Konflikt mit der erteilten Berechtigung? 🤔 Ich werd mal weiter testen.

EDIT:
Bei der Test APK 1.0.14.dev
Berechtigung rückgängig gemacht - Option Flugmodus in der App weg - Berechtigung wieder erteilt - Option wieder da ,aber keine Funktion.

In der Version funktioniert aber (gerade) Musik Play/Pause auch mit Musicolet viel zuverlässiger (egal ob gesperrt oder während Nutzung)
 
Zuletzt bearbeitet:
Die 1.0.14-dev funktioiert bei mir auch nicht richtig, Symbol wird nicht korrekt geschaltet.

Kann mittlerweile auch -- in beiden Versionen (1.0.13 & 1.0.14-dev) -- das von @@Lhotze beschriebene Verhalten reproduzieren. Effektiv wird unter OS 7.0.L.20250819 nur Bluetooth korrekt über die Action geschaltet.

Dann warten wir mal aufs nächste OTA...
 
Könntet ihr beim Togglen mit 1.0.14 bitte mal logcat nebenbei laufen haben und schauen, ob was auftaucht?

adb shell "logcat | grep -i \"signature permission\""

Beim ersten Aufruf, lässt sich aber nicht reproduzieren:

Code:
08-29 17:09:34.029  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.WRITE_SETTINGS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.029  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.WRITE_SECURE_SETTINGS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.030  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.INTERACT_ACROSS_USERS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.030  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.NETWORK_AIRPLANE_MODE for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
 
  • Wow
Reaktionen: R.E.D.
Beim ersten Aufruf, lässt sich aber nicht reproduzieren:

Code:
08-29 17:09:34.029  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.WRITE_SETTINGS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.029  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.WRITE_SECURE_SETTINGS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.030  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.INTERACT_ACROSS_USERS for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
08-29 17:09:34.030  1436  1852 W AppIdPermissionPolicy: Signature permission android.permission.NETWORK_AIRPLANE_MODE for package eco.shift.apps.actions (/data/app/~~y3U41DX7Bw3zbhfsmDfFjQ==/eco.shift.apps.actions-2GfzZ8eTZcWWakSQsle1VA==) not in signature permission allowlist
Super, danke vielmals fürs Testen und Verifizieren!

Dann wird es also wirklich erst mit dem nächsten Systemupdate möglich sein.

Note: platform signed system apps and their requested permissions aren't affected by this change, however permissions newly requested by a system app update (but not requested by the original system app) still need to be added to the allowlist.
 
  • Like
Reaktionen: R.E.D. und da_ni