0 votes

Android Market disparu après le redémarrage de l'émulateur sous Windows

Duplicata possible :
Android Market disparu après le redémarrage de l'émulateur

J'ai le même problème que celui mentionné aquí . Mais mes spécifications sont les suivantes :

OS=Windows 7 SP1 Révision du SDK = 21.0.1

  • OS = Windows 7 SP1
  • Révision du SDK = 21.0.1
  • Android-SDK=3.0(API Level 11)

Détails AVD

Nom : DemoDevice1

CPU/ABI : ARM(armeabi)

Chemin : c : \Users\The WABBIT.Android \AVD\DemoDevice1.avd

Cible : Android 3.0 (niveau 11 de l'API)

La peau : WXGA

Carte SD : 2048

hw.lcd.density : 213

vm.heapSize : 32

hw.ramSize : 1024

J'ai déjà supprimé le paquet SdkSetup.apk de l'émulateur, puis ajouté les paquets GoogleServicesFramework.apk et Vending.apk à l'émulateur.

Mais, au redémarrage, tout est revenu à la situation antérieure aux modifications. Je ne parviens pas à trouver un fichier img mis à jour dans un quelconque répertoire temporaire, ou dans un quelconque répertoire, comme indiqué dans le post mentionné ci-dessus.

Quelqu'un peut-il m'aider ?

0voto

MikeHagin Points 1

Pour ceux qui utilisent la version Windows du SDK Android, la réponse donnée dans le document Android Market disparu après le redémarrage de l'émulateur est la chose correcte à faire. Mais le nom du fichier .img et l'emplacement du répertoire temporaire diffèrent de ceux donnés dans ce message.

Je ne peux pas dire la raison de cette différence, mais je soupçonne qu'elle est due à l'une des raisons suivantes.

  1. J'utilise Windows au lieu de Linux.
  2. J'utilise une révision différente du SDK, je ne peux pas vraiment le dire car il n'y avait aucune mention de la révision du SDK dans le message précédent.
  3. Ou cela pourrait être à la fois 1 et 2.

De toute façon, vous trouverez le répertoire temporaire .img à l'endroit suivant :

SystemDrive \Users\ [nom d'utilisateur] \AppData\Local\Temp\AndroidEmulator

Le nom du fichier sera similaire au suivant :

TMP19AD.tmp

Note : - Le nom du fichier changera à chaque fois que vous exécuterez l'émulateur. - La taille du fichier sera toujours de 0bytes lorsque l'émulateur est en marche. - Il est plus facile de travailler sur un seul dispositif virtuel à la fois lorsque vous accédez aux fichiers .img temporaires. Sinon, il est difficile de savoir quel fichier correspond à quel dispositif virtuel.

Pour rendre vos modifications permanentes, procédez comme suit :

  1. Travaillez sur un seul dispositif virtuel à la fois.
  2. Copiez le .tmp du répertoire AndroidEmulator vers un emplacement temporaire avant de quitter l'émulateur.
  3. Renommez le fichier *.tmp en system.img.
  4. Copiez le fichier system.img dans le répertoire AVD de votre dispositif virtuel. En écrasant tout fichier system.img précédent.

J'ai créé le fichier batch suivant pour effectuer la copie.

system_copy.bat

@echo off
rem
rem system_copy.bat
rem
rem Command-line reference:
rem     system_copy [drive_letter] [account_username] [virtual_device's_name]
rem

rem
rem check to see if the user entered the parameters needed
rem
rem check for the drive letter
if [%1] == [] goto :error1
rem check for the account username
if [%2] == [] goto error2
rem check for the virtual device's name
if [%3] == [] goto error3

rem
rem set the paths for the tmp_path and main_avd_path
rem to use in the copying process
rem
:SetPaths
rem Grab current directory before we change it
rem this will be directory outside of the virtual device's directory
set main_avd_path="%cd%"

rem set the current location for the temp AVD .img files
set tmp_path=%1:\Users\%2\AppData\Local\Temp\AndroidEmulator

rem now we need to verify a few things

rem verify that the temp_path exist
if not exist %tmp_path% goto error4
rem verify that the temporary .img file exist
if not exist %tmp_path%\*.tmp goto error5

rem now we begin the copying of the system.img file
echo.
echo Copying the *.tmp file to the virtual device's avd directory as system.img.
echo.

copy %tmp_path%\*.tmp %main_avd_path%\%3%.avd\system.img /y >nul

rem check for any errors in copying the file
for %%e in (5 4 3 2 1) do if errorlevel %%e goto copyerror-%%e

if not errorlevel == 0 goto copyerror-0

rem show copy succes message
echo.
echo Copying is complete.
echo.
goto :EOF

rem beginning of the error messages
:error1
    echo.
    echo ERROR: System drive letter not specified.
    echo Please rerun this batch file and specify the system drive letter.
    echo.
    echo Command-line reference:
    echo    system_copy [drive_letter] [account_username] [virtual_device's_name]
    goto :EOF

:error2
    echo.
    echo ERROR: User account name not specified.
    echo Please rerun this batch file and specify the User account name.
    echo.
    echo Command-line reference:
    echo    system_copy [drive_letter] [account_username] [virtual_device's_name]
    goto :EOF

:error3
    echo.
    echo ERROR: Virtual device's name not specified.
    echo Please rerun this batch file and specify the AVD name.
    echo.
    echo Command-line reference:
    echo    system_copy [drive_letter] [account_username] [virtual_device's_name]
    goto :EOF

:error4
    echo.
    echo ERROR: AndroidEmulator folder '%tmp_path%' does not exist.
    echo Please verify that the AndroidEmulator folder has been created at '%tmp_path%' then restart this batch file.
    goto :EOF

:error5
    echo.
    echo ERROR: Temporary .img file does not exist.
    echo Check to see if the virtual device is running, then rerun this batch file.
    echo.
    echo Command-line reference:
    echo    system_copy [drive_letter] [account_username] [virtual_device's_name]
    goto :EOF

:copyerror-0
    echo.
    echo COPY ERROR:  There was an unknown copy error.
    echo.
    goto :EOF

:copyerror-1
    echo.
    echo COPY ERROR:  No files were found to copy.
    echo.
    goto :EOF

:copyerror-2
    echo.
    echo COPY ERROR:  The user pressed CTRL+C to terminate xcopy.
    echo.
    goto :EOF

:copyerror-3
    echo.
    echo COPY ERROR:  Initialization error occurred. There is not enough memory or disk space.
    echo.
    goto :EOF

:copyerror-4
    echo.
    echo COPY ERROR:  Disk write error occurred.
    echo.
    goto :EOF

:copyerror-5
    echo.
    echo COPY ERROR:  No files were found to copy.
    echo.
    goto :EOF

rem EOF

copiez et collez le code ci-dessus dans votre éditeur de texte préféré et enregistrez-le sous le nom de system_copy.bat.

Placez ce fichier batch dans le répertoire parent du répertoire avd du dispositif virtuel.

Pour l'exécuter, pendant que l'avd du dispositif virtuel est en cours d'exécution :

  1. Faites apparaître une invite cmd
  2. Aller au répertoire dans lequel se trouve le fichier batch
  3. Exécutez le fichier batch avec la syntaxe de commande suivante :

système_copie [drive_letter] [nom d'utilisateur du compte] [nom_du_dispositif_virtuel]

exemple :

 system_copy C "The WABBIT" Nexus_7

C'est ça. J'espère que cela aidera d'autres personnes.

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