Vraag


Acties:
  • 0 Henk 'm!

  • kwibox
  • Registratie: Oktober 2022
  • Laatst online: 12:11
Als projectje heb ik een Pexar 11 inch fotolijstje gekocht, hierop draait android 11 met de Frameo app. Werkt prima, prachtig display. Echter wil ik hierop de homeassistant companion app of FullyKioskBrowser op installeren als homeautomation dashboard (´t scherm is ook een touchscreen).

Het ding draait op android 11 welke behoorlijk gekortwiekt is: geen browser app (wel webview), geen home launcher, geen bestandsbeheer app, geen playstore enz. Het is voorzien van de Frameo app en de bijbehorende app op je telefoon/tablet kan je eenvoudig foto's naar het lijstje sturen.

De frameo app heeft ook de optie om ADB open te zetten voor de tweakers onder ons. :henk

Ik krijg echter met geen mogeljikheid via adb install <apk> een app geinstalleerd. packagemanager weigert de app te installeren met het volgende commentaar via logcat (zie regel 18).

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
8-30 23:59:33.932   595   666 W RuleEvaluation: Integrity rule files are not available.
08-30 23:59:33.933   595   642 I PackageManager: Integrity check passed for file:///data/app/vmdl1180299245.tmp
08-30 23:59:33.959   595   642 W PackageManager: de.ozerov.fully
08-30 23:59:33.959   595   642 W PackageManager: android.content.pm.PackageManager$NameNotFoundException: de.ozerov.fully
08-30 23:59:33.959   595   642 W PackageManager:        at android.app.ApplicationPackageManager.getPackageInfoAsUser(ApplicationPackageManager.java:206)
08-30 23:59:33.959   595   642 W PackageManager:        at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:178)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.PackageManagerService.isSystemApp(PackageManagerService.java:18028)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.PackageManagerService.preparePackageLI(PackageManagerService.java:17458)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.PackageManagerService.installPackagesLI(PackageManagerService.java:17047)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.PackageManagerService.installPackagesTracedLI(PackageManagerService.java:16437)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.PackageManagerService.lambda$processInstallRequestsAsync$22$PackageManagerService(PackageManagerService.java:14576)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.pm.-$$Lambda$PackageManagerService$9znobjOH7ab0F1jsW2oFdNipS-8.run(Unknown Source:6)
08-30 23:59:33.959   595   642 W PackageManager:        at android.os.Handler.handleCallback(Handler.java:938)
08-30 23:59:33.959   595   642 W PackageManager:        at android.os.Handler.dispatchMessage(Handler.java:99)
08-30 23:59:33.959   595   642 W PackageManager:        at android.os.Looper.loop(Looper.java:223)
08-30 23:59:33.959   595   642 W PackageManager:        at android.os.HandlerThread.run(HandlerThread.java:67)
08-30 23:59:33.959   595   642 W PackageManager:        at com.android.server.ServiceThread.run(ServiceThread.java:44)
08-30 23:59:33.959   595   642 W PackageManager: Package de.ozerov.fully is not allow to install.
08-30 23:59:33.961   414  1103 E installd: rmdir /data/app/vmdl1180299245.tmp: No such file or directory
08-30 23:59:33.961   414  1103 E installd: Couldn't opendir /data/app/vmdl1180299245.tmp: No such file or directory
08-30 23:59:33.962   414  1103 E installd: Failed to delete /data/app/vmdl1180299245.tmp: No such file or directory


Wat heb ik al gecontroleerd/gedaan:
- ik ben root in de ADB shell
- het interweb maakt geen vermelding van "app is not allow to install" als melding van packagemanager zelf
- ik kan schrijven naar /data/app, /sdcard/ enz, handmatig de apk in /data/app dumpen kan maar de apk word weggehaald door android rescue party https://source.android.co.../tests/debug/rescue-party (dit verschijnt ook in /data/system/uiderrors.txt)
- ik heb de frameo apk ge-deconstruct met apktools. hierin lijkt een mechanisme te zitten om ongewenste apps te verwijderen met daarbij een soort van whitelist:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
    iput-object p1, p0, Lnet/frameo/frame/configuration/task/TaskTestHasUnwantedAppsInstalled;->p:Ljava/util/ArrayList;

    .line 14
    .line 15
    const-string p2, "android"

    .line 16
    .line 17
    invoke-virtual {p1, p2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 18
    .line 19
    .line 20
    const-string v0, "com.google.android."

    .line 21
    .line 22
    invoke-virtual {p1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 23
    .line 24
    .line 25
    const-string v1, "com.android."

    .line 26
    .line 27
    invoke-virtual {p1, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 28
    .line 29
    .line 30
    const-string v2, "net.frameo."

    .line 31
    .line 32
    invoke-virtual {p1, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 33
    .line 34
    .line 35
    const-string v3, "jp.co.omronsoft.openwnn"

    .line 36
    .line 37
    invoke-virtual {p1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 38
    .line 39
    .line 40
    new-instance p1, Ljava/util/ArrayList;

    .line 41
    .line 42
    invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V

    .line 43
    .line 44
    .line 45
    iput-object p1, p0, Lnet/frameo/frame/configuration/task/TaskTestHasUnwantedAppsInstalled;->q:Ljava/util/ArrayList;


ik ben echter absoluut geen kotlin/android app expert, meer verstand van python :P

echter het disablen van de frameo app heeft geen effect op de packagemanager om de app te installeren (weigert nog steeds bij disabled frameo app) en ik zie in logcat geen bemoeienis van de frameo app met het installatieproces.

Verder:
- ik kan wel via adb install de frameo app (her) installeren
- instellingen package_verifier_enable=0, verifier_verify_adb_installs=0, install_non_market_apps=1 hebben geen effect (en je zou dan een andere foutmelding van packagemanager verwachten).

Ik denk dat er een soort van whitelist aanwezig is die het installeren van apps behalve de frameo app blokkeerd, maar behalve in de apk van frameo zelf kan ik in de dump van het bestandsysteem van ´t ding via adb pull geen duidelijke aanwijzingen vinden.

Heeft er iemand nog een suggestie waar ik verder moet gaan zoeken? Of is er iemand die met mij verder in de frameo app kan duiken?

Ik heb nog een aantal opties zoals bv de packagename van fully kios browerser aanpassen, packagemanager vervangen of bv fotos van homeassstant dashboard laten zien als troll naar mijzelf :) Maar graag zou ik eerst willen uitzoeken waarom packagemanager nu zo stom doet. :(

Alle reacties


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Voor je vraag had je beter ietsjes verder kunnen door scrollen voor het juiste forum deel. LNX bespreekt geen Android namelijk, daar hebben we AND voor. Ik verplaats je topic die kant op, want daar vind je meer Android experts.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • swhnld
  • Registratie: December 2005
  • Laatst online: 22:57
Ik mis in je overzicht of je ook andere apps, zoals een file manager, geprobeerd hebt.

Verder: In principe moet in de instellingen side loading aan staan voor de specifieke app die de installatie uitvoert. Speel het maar na op een telefoon. Je krijgt de vraag met welke app je een APK wil installeren en die app moet je dan white listen. Dit proces zul je na moeten spelen op je foto lijst denk ik.

Acties:
  • +1 Henk 'm!

  • kwibox
  • Registratie: Oktober 2022
  • Laatst online: 12:11
@swhnld dank voor je reactie, maar ik denk dat we elkaar niet helemaal begrijpen ;)

Ik heb zeker andere apps geprobeerd. Met unkown sources uit krijg je andere foutmeldingen, dus daar ligt het niet aan ;) Het is niet een kwestie van kan geen app installeren op een huis-tuin en keuken android device maar een purpose build fotolijstje die daar eigenlijk nooit voor gemaakt is.

Ik snap verder je vraag niet helemaal met "met welke app je een APK wil installeren". Ik installeer via adb dan is com.android.shell de opdrachtgever en com.android,packageinstaller voert de installatie uit (via installd). Komt geen grafische interface aan te pas want die is er simpelweg niet. Enkel de frameo app en via adb am start -a * kan ik settings oproepen en webview. Zie ook https://krunalpatel.hashn...lation-process-in-android

De Frameo app installeert zijn nieuwe apk dmv het starten van android.intent.action.VIEW en bied daarin het apk bestand aan als storageprovider. Via deze https://rtx.meta.security...droid-run-as-forgery.html newline injection exploit heb ik nog op verschillende manieren gedaan met run-as namens de Frameo app maar dat word tegengehouden door een security rule van StorageProvider (wat natuurlijk te verwachten was).

Het unwanted apps mechanisme van de frameo app zelf lijkt hier geen rol in te spelen, ook verwijderd en disabled weigert packagemanager elke apk te installeren met de foutmelding Package <name> is not allow to install. Deze foutmelding vind ik vreemd genoeg niet terug in de online source van android packageinstaller, ook niet de source van door een decompiler gehaalde apk van com.android.packageinstaller van t fotolijstje zelf.

Na nader onderzoek lijkt er het op of het ding helemaal geen nieuwe apps kan installeren; ook de frameo app is niet te herinstalleren als deze voor alle users verwijderd is. Enkele een factory reset zet de app dan terug. Denk dat de fabrikant een soort policy heeft geïnstalleerd op het ding die blokkeert dan dat er nieuwe apk's geinstalleerd kan worden (de package name van fully kiosk browser aanpassen bood geen soelaas). Ik kan geen duidelijke sporen van een geinstalleerd MDN profile vinden

Ik denk dat de enige manier om hierop een app te krijgen is het unlocken van de bootloader en custom FW flashen of de apk extern via een shell script oid te installeren die de installatiestappen van packagemanager en installd naa-aapt (als dat uberhaupt kan).

Ik had de hoop dat een android app dev of iemand anders die diepe kennis heeft van android (een core dev oid) zou reageren en met suggesties zou kunnen komen.

[ Voor 3% gewijzigd door kwibox op 03-09-2025 15:49 ]


Acties:
  • 0 Henk 'm!

  • swhnld
  • Registratie: December 2005
  • Laatst online: 22:57
Voor diepere kennis moet je denk ik bij XDA zijn. Bij mensen die zelf een custom rom bouwen, denk ik.

Je zou nog de gebruikte bestanden naast een andere Android 11 kunnen leggen of die aangepast zijn.
Flashen met andere rom kan misschien ook wel, maar die moet wel compatibel zijn

Acties:
  • 0 Henk 'm!

  • RepareerDroid
  • Registratie: September 2022
  • Niet online
kwibox schreef op woensdag 3 september 2025 @ 15:45:
Ik denk dat de enige manier om hierop een app te krijgen is het unlocken van de bootloader en custom FW flashen of de apk extern via een shell script oid te installeren die de installatiestappen van packagemanager en installd naa-aapt (als dat uberhaupt kan).

Ik had de hoop dat een android app dev of iemand anders die diepe kennis heeft van android (een core dev oid) zou reageren en met suggesties zou kunnen komen.
Heb je al geprobeerd de bootloader te unlocken? Als de pm al dicht getimmerd zit dan is de kans groot dat de bootloader ook vergrendeld is.

Acties:
  • 0 Henk 'm!

  • kwibox
  • Registratie: Oktober 2022
  • Laatst online: 12:11
@swhnld ja paar dagen hiervoor bij XDA gepost (na eerst flink rondzoeken, heeft nog niet zoveel opgelevert helaas

@RepareerDroid das was idd volgende stap, krijg netjes via adv fastbool flashing unlock een prompt om te unlocken... maar t ding heeft geen volumeknoppen 8)7 (met een usb toetsenbord en t touchscreen kom ik ook niet verder)
Pagina: 1