9 votes

Impossible de déplacer quelques applications vers la carte SD

J'ai des applications telles que Any.DO et AK Notepad installées sur mon téléphone Samsung Galaxy Y Android 2.3.6. J'ai essayé Titanium Backup et App 2 SD (déplacer l'application vers la carte SD) mais je ne suis toujours pas capable de déplacer ces applications vers la carte SD. Qu'est-ce qui ne va pas? Est-ce que quelqu'un peut m'aider ici?

1 votes

Que se passe-t-il si vous essayez de déplacer les applications vers une carte SD?

1 votes

@Flow voir ma réponse. Les deux applications ont des widgets intégrés, il est donc fort probable qu'elles ne prennent pas en charge App2SD.

0 votes

Si vous souhaitez déplacer votre application vers la carte SD en raison d'un "faible espace de stockage interne", allez consulter android.stackexchange.com/questions/30620/…

7voto

Milner Points 533

Une application doit explicitement prendre en charge App2SD, sinon vous ne pouvez pas la déplacer sur la carte. Il existe plusieurs raisons pour lesquelles une application pourrait ne pas le prendre en charge :

  • utilisation de widgets (les deux applications mentionnées semblent appartenir à cette catégorie. AK Notepad : "Épingler des notes sur votre écran d'accueil"; Any.DO : "Vous pouvez même ajouter notre widget à votre écran d'accueil")
  • exécution d'un service

Comme la carte SD serait inaccessible lors de la connexion à un ordinateur, les deux choses "planteraient" (car elles ne pourraient plus accéder à leurs données, etc.). Bien sûr, il y a toujours la possibilité que le développeur simplement ne se souciait pas - dans ce cas, vous devriez le contacter et lui demander.

0 votes

J'ai rencontré un cas intéressant - une application, f-droid.org/repository/browse/?fdid=com.nanoconverter.zlab qui a un défaut - elle offre un service en arrière-plan et un widget, pourtant mon 4.2.2 peut le déplacer sur la carte SD (perdant ainsi cette fonctionnalité, bien sûr).

3voto

Andrew T. Points 12017

Il existe certains facteurs qui peuvent affecter cela :

  1. Une application doit explicitement déclarer qu'il est préférable/possible de l'installer sur une carte SD.

    À partir du niveau d'API 8, vous pouvez autoriser votre application à être installée sur le stockage externe (par exemple, la carte SD du périphérique). Il s'agit d'une fonctionnalité facultative que vous pouvez déclarer pour votre application avec l'attribut de manifeste android:installLocation. Si vous ne déclarez pas cet attribut, votre application sera installée uniquement sur le stockage interne et ne pourra pas être déplacée vers le stockage externe.

    (Mise en emphase de ma part)

  2. Une application est configurée pour être compilée en utilisant l'API 7 (Froyo) ou inférieure, ce qui ne prend pas en charge l'installation d'une application sur une carte SD (même si elle est installée sur des appareils GingerBread ou plus récents)

    La capacité pour votre application de s'installer sur le stockage externe est une fonctionnalité disponible uniquement sur les appareils exécutant le niveau d'API 8 (Android 2.2) ou supérieur. Les applications existantes qui ont été construites avant le niveau d'API 8 s'installeront toujours sur le stockage interne et ne pourront pas être déplacées vers le stockage externe (même sur des appareils avec un niveau d'API 8). Cependant, si votre application est conçue pour prendre en charge un niveau d'API inférieur à 8, vous pouvez choisir de prendre en charge cette fonctionnalité pour les appareils avec un niveau d'API 8 ou supérieur et rester compatible avec les appareils utilisant un niveau d'API inférieur à 8.

    (Mise en emphase de ma part)

Les raisons pour lesquelles certaines applications ne sont pas préférables à installer sur une carte SD sont les suivantes :

Lorsque l'utilisateur active le stockage de masse USB pour partager des fichiers avec son ordinateur (ou démonte ou retire autrement le stockage externe), toute application installée sur le stockage externe et actuellement en cours d'exécution est arrêtée. Le système devient effectivement inconscient de l'application jusqu'à ce que le stockage de masse soit désactivé et que le stockage externe soit remonté sur le périphérique. En plus d'arrêter l'application et de la rendre inaccessible à l'utilisateur, cela peut rompre certains types d'applications de manière plus grave. Pour que votre application se comporte de manière constante comme prévu, vous ne devez pas autoriser votre application à être installée sur le stockage externe si elle utilise l'une des fonctionnalités suivantes, en raison des conséquences citées lorsque le stockage externe est démonté :

  • Services

    Votre Service en cours d'exécution sera arrêté et ne sera pas redémarré lorsque le stockage externe sera remonté. [...]

  • Services d'alarme

    Vos alarmes enregistrées avec AlarmManager seront annulées. [...]

  • Moteurs de méthode d'entrée

    Votre IME sera remplacé par l'IME par défaut. [...]

  • Fonds d'écran animés

    Votre fond d'écran animé en cours d'exécution sera remplacé par le fond d'écran animé par défaut. [...]

  • Widgets d'application

    Votre widget d'application sera retiré de l'écran d'accueil. Lorsque le stockage externe est remonté, votre widget d'application ne sera pas disponible pour l'utilisateur à sélectionner jusqu'à ce que le système réinitialise l'application d'accueil (généralement pas avant un redémarrage du système).

  • Gestionnaires de compte

    Vos comptes créés avec AccountManager disparaîtront jusqu'à ce que le stockage externe soit remonté.

  • Adaptateurs de synchronisation

    Votre AbstractThreadedSyncAdapter et toute sa fonctionnalité de synchronisation ne fonctionneront pas jusqu'à ce que le stockage externe soit remonté.

  • Administrateurs de périphérique

    Votre DeviceAdminReceiver et toutes ses capacités administratives seront désactivés, ce qui peut avoir des conséquences imprévues pour la fonctionnalité du périphérique, pouvant persister après le remontage du stockage externe.

  • Receveurs de diffusion écoutant "démarrage terminé"

    Le système envoie la diffusion ACTION_BOOT_COMPLETED avant que le stockage externe ne soit monté sur le périphérique. Si votre application est installée sur le stockage externe, elle ne pourra jamais recevoir cette diffusion.

Si votre application utilise l'une des fonctionnalités énumérées ci-dessus, vous ne devriez pas autoriser votre application à s'installer sur le stockage externe.

(Certaines parties ont été censurées. Elles expliquent ce que les développeurs doivent faire pour que leurs applications fonctionnent correctement après le remontage de la carte SD.)

Note : cette réponse sert d'information générale sur "Pourquoi certaines applications ne peuvent pas être déplacées vers la carte SD".

Source : Développeurs Android : Emplacement d'installation des applications.

1voto

Divulged Points 154

Il est définitivement possible de déplacer des applications vers la carte SD et de les faire fonctionner parfaitement (widgets et services compris) via Link2SD.

EDIT: Utiliser cette méthode nécessite un accès root sur votre téléphone et nécessite également que votre carte SD soit formatée pour avoir une deuxième partition dessus.

Pour éviter de poster à nouveau la réponse en double ici, je vous laisse simplement un lien : https://android.stackexchange.com/a/145591/167026

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X