Tuesday, April 1, 2014

安装apk到虚拟机emulator

1. 下载apk(可以用apk finder网下载或者结合apk extrator&ES file explorer下载)
2. 打开虚拟机(电脑不能用proxy上网,否则虚拟机没法上网)
2. 到android sdk里面的adb目录,比如C:\Users\KK\AppData\Local\Android\android-sdk\platform-tools,然后输入命令adb install C:\Users\KK\Documents\Coding\Python\Pandora_apkfiles.com.apk
过一会会出现如下信息:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
263 KB/s (5357476 bytes in 19.864s)
        pkg: /data/local/tmp/Pandora_apkfiles.com.apk
Success
表示成功安装


不过,大部分apk安装过程都会出现如下错误:
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]
这是因为apk需要重新签名,可以按以下步骤完成:

1. 从http://selendroid.io/下载selendroid jar并配置系统变量(非用户)
2. ANDROID_HOME=c:\Android\sdk, 加入到path: %ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools(非必要步骤)

3.
java -jar C:\selendroid-standalone-0.10.0-with-dependencies.jar -app C:\Mobile\com.carmax_1.7.3.apk

新生成的apk将会生成在原apk同一文件夹下并且加入前缀resigned-, 此例中为resigned-com.carmax_1.7.3.apk.

4. 安装
adb install -r C:\Mobile\resigned-com.carmax.carmax_1.7.3.apk
adb -s emulator-5554 install -r C:\Mobile\resigned-com.carmax.carmax_1.7.3.apk

有时还会出现以下错误:
[INSTALL_FAILED_MISSING_SHARED_LIBRARY]
这个表示缺少Google maps,在Android SK manager中安装Google APIs (ARM System Image)
然后emulator配置中选target: Google APIs (not Android 4.4.2), 选上Use Host GPU(为界面响应加速)
这个可以解决以上错误或者target用最新的4.4.2的API,这个是自带google maps


Use proxy on emulator:

in CMD, enter emulator -avd test -http-proxy http://168.192.1.2:3300


No comments:

Post a Comment