Push my apk to / system / app

Comment puis-je afficher mon dossier d'application sur le dossier "/ system / app" de l'émulateur Android?

J'ai déjà essayé d'utiliser:
"AdB Push MyApk.apk / system / app"
Et cela me donne ceci:

  • Définir l'élément sélectionné de la filière par programme
  • Nom de fichier manquant pour openFileChooser Android 4.4.4
  • Comment stocker l'image dans la base de données SQLite
  • Sqlite3: non trouvé
  • ListView OnItemClickListener ne répond pas?
  • Google TV - est-il conçu pour une efficacité aussi importante que celle des combinés / tablettes?
  • "failed to copy: ... No space left on device" 

    Bien que des réglages -> sdCard & Phone Storage, j'ai 37Mb d'espace libre interne.

    L'essentiel de ce besoin est
    Lié aux autorisations.

    J'ai besoin de l'autorisation INSTALL_PACKAGES
    Et je sais que, en mettant ma demande là-bas,
    In / system / app, j'obtiens cette autorisation.

    14 Solutions collect form web for “Push my apk to / system / app”

    Normalement, la seule façon d'accéder au répertoire "/ system /" est d'avoir un périphérique enraciné. Je ne sais pas si cela est nécessaire pour l'émulateur. Ce pourrait être votre problème.

    Je peux installer un APK vers /system/app avec les étapes suivantes.

    1. Appuyez sur APK sur carte SD.

       $ adb push SecureSetting.apk /sdcard/ 
    2. Entrez la console et obtenez la coque

       $ adb shell 
    3. Passer au superutilisateur. Si votre appareil n'est pas enraciné, placez-le enraciné en premier. (Si vous ne savez pas comment faire, juste Google.)

       $ su 
    4. Remontez la partition système avec l'autorisation WRITE.

       $ mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system 
    5. Cat votre APK de /sdcard/ to /system/ , certains gars ont un échec avec la commande cp raison de cp n'est pas pris en charge. Donc, utilisez cat place.

       $ cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk 
    6. Remout /system partition du /system à READ-ONLY, et quittez

       $ mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system $ exit 

    Ensuite, redémarrez votre appareil, l'APK aurait dû être installé sur /system/app .

    Paramètres -> sdCard & stockage de téléphone dit sur / dossier de données.

    / Le système est monté séparément et je suppose qu'il n'y a aucun moyen d'écrire là-bas, sauf si vous créez votre propre version Android.

    Voir les montures en cours d'exécution

     adb shell # df 

    Voici les étapes si vous installez un système apk pour les périphériques Android 5.0 ou ultérieurs. Pour les anciennes versions, utilisez la réponse de Posaidong

    Renommez votre fichier base.apk à base.apk

     $ adb push base.apk /sdcard/ 

    Entrez la console et obtenez la coque

     $ adb shell 

    Passer au superutilisateur. Si votre appareil n'est pas enraciné, placez-le enraciné en premier. (Si vous ne savez pas comment faire, juste Google.)

     $ su 

    Remontez la partition système avec l'autorisation WRITE.

     $ mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system 

    Créez un dossier de test dans le dossier système / application. (Ou peut utiliser / system / priv-app aussi). Idéalement, ce nom de dossier devrait être le nom de l'application. Pour l'instant, utilisez Test

     $ mkdir /system/app/Test 

    Nécessite 755 autorisations pour ce répertoire

     $ chmod 755 /system/app/Test 

    Copiez votre base.apk à l'intérieur

     $ cat /sdcard/base.apk > /system/app/Test/Base.apk 

    Remout / partition du système à READ-ONLY, et quittez

     $chmod 644 /system/app/Test/Base.apk 

    Nécessite une autorisation 644 pour ce répertoire

     $ mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system $ exit 

    Redémarrez votre appareil. Lorsque le démarrage est terminé, vous devriez voir un message système comme la mise à jour Android …

    Vous devez d'abord exécuter le adb remount , puis il devrait vous adb push à /system dossiers /system

    Le fichier batch suivant installera tous les fichiers apk dans le dossier dans le répertoire / system / app. Il monte le système en tant que rw, puis copie les fichiers.

    Pour l'utiliser, placez le code suivant dans un éditeur de texte et enregistrez-le comme install.bat sur une machine Windows. Ensuite, double-cliquez sur le fichier de commandes pour installer n'importe quel fichier APK dans le même dossier que le fichier batch.

    REMARQUE: vous ne pouvez pas remonter la partition du système sauf si vous avez une racine sur le périphérique. J'ai surtout utilisé cela sur l'émulateur qui par défaut est la racine (Et c'était la question originale), mais le concept devrait être le même sur un périphérique physique.

     @ECHO OFF
     % ~ D0
     CD% ~ dp0
     Racine adb
     Adb shell mount -o rw, remonte -t ​​yaffs2 / dev / block / mtdblock3 / system
     Adb shell rm /system/app/SdkSetup.apk
     Pour / f %% a IN ('dir / b * .apk') do adb push %% a / system / app /.
    

    Utilisez les commandes ci-dessous à partir de votre shell ADB super utilisateur. Copiez l'APK de votre APP dans votre carte SD ou stockage interne.

     $ adb shell $ su $ mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system $ cp /sdcard/<Your_APK_PATH> /system/app/file_name_comes_here.apk $ chmod 644 /system/app/<YourAPK>.apk 

    Ensuite, redémarrez l'appareil

    Vous devez monter le système en lecture / écriture, puis appuyer sur l'application.

    Ceci est répondu dans cette question: Push .apk to / system / app / dans HTC HERO

    Même avant le adb remount vous devez modifier les autorisations pour le système / dans le shell adb. Vous pouvez utiliser chmod pour modifier les autorisations.

    Si votre apk est suffisamment petit pour pénétrer, essayez encore une fois. J'ai rencontré le même problème et essayé deux fois de pousser les disques vers / system / app /

    Apparemment, il n'y a pas assez d'espace pour votre application dans le support "/ system". Vous pouvez vérifier cela avec la commande "adb shell df".

    Pour résoudre ce problème, vous devez définir adéquatement le paramètre de taille de partition pendant le démarrage de votre AVD comme ceci:

     emulator.exe -avd <your avd name> -partition-size 512 

    Vérifiez que vous avez assez d'inodes, vous pouvez avoir suffisamment de mémoire, mais pas assez d'inode, c'est-à-dire l'espace réservé au fichier.

    J'ai rencontré cette situation à plusieurs reprises en copiant des fichiers apk vers une partition /system et je l'ai finalement résolu en procédant comme suit:

    • Vérifiez l'espace libre dans /system partition /system utilisant df à partir du shell AdB . Très probablement, l'espace libre serait inférieur à la taille du fichier apk.

       Filesystem Size Used Free Blksize /dev 1.3G 80.0K 1.3G 4.0K /sys/fs/cgroup 1.3G 12.0K 1.3G 4.0K /mnt/secure 1.3G 0.0K 1.3G 4.0K /mnt/asec 1.3G 0.0K 1.3G 4.0K /mnt/obb 1.3G 0.0K 1.3G 4.0K /system 3.5G 3.5G 10.0M 4.0K /efs 15.7M 2.8M 12.9M 4.0K /cache 192.8M 736.0K 192.1M 4.0K /data 25.5G 12.7G 12.8G 4.0K /persdata/absolute 4.9M 120.0K 4.8M 4.0K /sbfs 10.8M 8.0K 10.7M 4.0K /mnt/shell/knox-emulated 25.5G 12.7G 12.8G 4.0K /mnt/shell/privatemode 25.4G 12.7G 12.7G 4.0K /mnt/shell/emulated 25.4G 12.7G 12.7G 4.0K /preload 5.8M 3.3M 2.5M 4.0K 
    • Utilisez du / system pour obtenir des tailles de chaque dossier et fichier dans /system partition /system . Disposez la sortie par ordre décroissant de taille (s) à obtenir (quelque chose de similaire):

       4091840 /system/ 1199416 /system/app 964064 /system/priv-app 558616 /system/lib64 373320 /system/lib 206624 /system/vendor 170952 /system/app/WebViewGoogle 148824 /system/app/WebViewGoogle/lib 125488 /system/voice 125480 /system/voice/embedded 122880 /system/app/Chrome 106520 /system/framework 102224 /system/priv-app/Velvet 96552 /system/app/SBrowser_3.0.38 93936 /system/vendor/lib64 93792 /system/vendor/lib64/egl 92552 /system/tts 92512 /system/tts/lang_SMT ... 
    • Supprimez les fichiers inutiles de /system/voice/embedded , /system/tts/lang_SMT (pour le support linguistique /system/tts/lang_SMT ) et / ou d'autres dossiers pour libérer suffisamment d'espace dans /system partition /system pour accueillir le nouveau fichier apk. La suppression de fichiers dans des partitions autres que /system peut ne pas aider dans ce scénario. ( NB : cette étape peut nécessiter des privilèges RAOT /system partitions de remontage /system en mode lecture-écriture à l'aide de mount -o rw, remonté / système )

    Si vous cherchez simplement à l'installer, vous pouvez toujours faire: adb install myApk.apk .

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.