一,安装APK
安装APK当然首先是要有模拟器,和要安装的APK包,这个不多废话了。直接切入正题,在模拟器安装APK。
首先,将模拟器执行起来,直到正式进入系统。
接下来,打开一个cmd窗口,路径切换到模拟器目录下的tools目录。
输入:adb install 你要安装的apk文件的路径。
如果看到一行类显示传输速度的文字,那说明安装成功了。
代码:
C:\Documents and Settings\Administrator>cd D:\andriod\tools
C:\Documents and Settings\Administrator>d:
D:\android\tools>adb install c:\NetScramble_1.1.apk 100 KB/s (0 bytes in 164464.001s)
回到Android模拟器的界面,我本来以为可以看到刚刚安装的APK程序图标,结果,却根本没有...后来研究了一下,发现这根APK包自身有关。使用自己编写的HelloAndroid安装,图标就可以显示在桌面上,而NetScramble_1.1.apk安装后却显示不出来。具体原因是来自于AndroidManifest.xml文件的内容。
代码:
<?xml version="1.0" encoding="utf-8"?> <manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="net.xiashou.android"> <intent-filter> <category
android:name="android.intent.category.LAUNCHER" />
</intent-filter> </activity> </application>
</manifest>
xml文件中,红色一行是表示这个apk属于哪个归类里,如果不正确的填写这个信息,Launcher将不会将其显示在桌面上,因为它会认为这个应用部署以自己的归类。
那么,是不是我们就无法执行缺失了category的apk了呢?
后来,在一个老外的blog上,查到了方法:在shell内使用am来加载android应用
usage: am [start|instrument] am start [-a ] [-d
<DATA_URI>] [-t <MIME_TYPE>] [-c <CATEGORY> [-c
<CATEGORY>] ...] [-e <EXTRA_KEY> <EXTRA_VALUE> [-e
<EXTRA_KEY> <EXTRA_VALUE> ...] [-n <COMPONENT>] [-D]
[<URI>] am instrument [-e ] [-p ] [-w] <COMPONENT>
比如启动一个manifest为如下内容的apk
<?xml version="1.0" encoding="utf-8"?> <manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="net.xiashou.android"> <intent-filter> <category
android:name="android.intent.category.LAUNCHER" />
</intent-filter> </activity> </application>
</manifest>
使用的指令为:
am start -n net.xiashou.android/net.xiashou.android.HelloAndroid
还有一些很有用处的用法
直接启动浏览器打开一个网址 # am start -a android.intent.action.VIEW -d http://www.xiashou.net
拨打电话 # am start -a android.intent.action.CALL -d tel:10086启动google map直接定位在天津 # am start -a android.intent.action.VIEWgeo:0,0?q=tianjin
am很可能将来成为第三方lancher的基础。
二,卸装APK
与安装类似的,卸妆是利用adb执行一个卸妆指令:
D:\android\tools>adb shell rm data/app/NetScramble_1.1.apk
这里,也可以看出,Android系统是将第三方应用放在data/app目录内的。
6.现在检查仿真器中的applications,新的应用应该已经在她的内容里面,并且您应该看到新应用准备和安装好。
我在window下碰到的错误信息,当在在window运行的adb提示 :* deamon still not running *
error: no device.
在这种情况下尝试到停止adb服务器并且手动地开始它使用:
1.$adb kill-server
2.$adb start-server
如果您想测试deamon是否在运行,输入:$adb shell
卸载你测试应用做法是
$adb shell rm your_application.apk
(3) 安装模拟器Skin, 下载 Skin http://bbs.weiphone.com/read.php?tid=516501
解压 Magic_Hero_emu_skin.zip 后放在 C:\Android\android-sdk-windows-1.6_r1\platforms\android-1.6\skins\ 下
(4) Windows 进入command prompt 及建立 AVD (Android Virtual Device) 及 sdcard (500M)
复制代码
C:
cd C:\Android\android-sdk-windows-1.6_r1\tools
android create avd --name my_avd1.6 --target 2 --sdcard 500M --skin HVGA-P-HTCMagic
--target 2 代表 Android 1.6 API level: 4
--sdcard 500M 代表建立新SD卡,容量 500M,可选其他容量例如 1000M
--skin HVGA-P-HTCMagic 代表使用 HTCMagic skin可选其他 skin 例如 HVGA-P-HTCHero
(5) 打开模拟器, 用 HTC Magic skin 缩小至0.8
复制代码
emulator -avd my_avd1.6 -skin HVGA-P-HTCMagic -scale 0.8
安装APK当然首先是要有模拟器,和要安装的APK包,这个不多废话了。直接切入正题,在模拟器安装APK。
首先,将模拟器执行起来,直到正式进入系统。
接下来,打开一个cmd窗口,路径切换到模拟器目录下的tools目录。
输入:adb install 你要安装的apk文件的路径。
如果看到一行类显示传输速度的文字,那说明安装成功了。
代码:
C:\Documents and Settings\Administrator>cd D:\andriod\tools
C:\Documents and Settings\Administrator>d:
D:\android\tools>adb install c:\NetScramble_1.1.apk 100 KB/s (0 bytes in 164464.001s)
回到Android模拟器的界面,我本来以为可以看到刚刚安装的APK程序图标,结果,却根本没有...后来研究了一下,发现这根APK包自身有关。使用自己编写的HelloAndroid安装,图标就可以显示在桌面上,而NetScramble_1.1.apk安装后却显示不出来。具体原因是来自于AndroidManifest.xml文件的内容。
代码:
<?xml version="1.0" encoding="utf-8"?> <manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="net.xiashou.android"> <intent-filter> <category
android:name="android.intent.category.LAUNCHER" />
</intent-filter> </activity> </application>
</manifest>
xml文件中,红色一行是表示这个apk属于哪个归类里,如果不正确的填写这个信息,Launcher将不会将其显示在桌面上,因为它会认为这个应用部署以自己的归类。
那么,是不是我们就无法执行缺失了category的apk了呢?
后来,在一个老外的blog上,查到了方法:在shell内使用am来加载android应用
usage: am [start|instrument] am start [-a ] [-d
<DATA_URI>] [-t <MIME_TYPE>] [-c <CATEGORY> [-c
<CATEGORY>] ...] [-e <EXTRA_KEY> <EXTRA_VALUE> [-e
<EXTRA_KEY> <EXTRA_VALUE> ...] [-n <COMPONENT>] [-D]
[<URI>] am instrument [-e ] [-p ] [-w] <COMPONENT>
比如启动一个manifest为如下内容的apk
<?xml version="1.0" encoding="utf-8"?> <manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="net.xiashou.android"> <intent-filter> <category
android:name="android.intent.category.LAUNCHER" />
</intent-filter> </activity> </application>
</manifest>
使用的指令为:
am start -n net.xiashou.android/net.xiashou.android.HelloAndroid
还有一些很有用处的用法
直接启动浏览器打开一个网址 # am start -a android.intent.action.VIEW -d http://www.xiashou.net
拨打电话 # am start -a android.intent.action.CALL -d tel:10086启动google map直接定位在天津 # am start -a android.intent.action.VIEWgeo:0,0?q=tianjin
am很可能将来成为第三方lancher的基础。
二,卸装APK
与安装类似的,卸妆是利用adb执行一个卸妆指令:
D:\android\tools>adb shell rm data/app/NetScramble_1.1.apk
这里,也可以看出,Android系统是将第三方应用放在data/app目录内的。
6.现在检查仿真器中的applications,新的应用应该已经在她的内容里面,并且您应该看到新应用准备和安装好。
我在window下碰到的错误信息,当在在window运行的adb提示 :* deamon still not running *
error: no device.
在这种情况下尝试到停止adb服务器并且手动地开始它使用:
1.$adb kill-server
2.$adb start-server
如果您想测试deamon是否在运行,输入:$adb shell
卸载你测试应用做法是
$adb shell rm your_application.apk
(3) 安装模拟器Skin, 下载 Skin http://bbs.weiphone.com/read.php?tid=516501
解压 Magic_Hero_emu_skin.zip 后放在 C:\Android\android-sdk-windows-1.6_r1\platforms\android-1.6\skins\ 下
(4) Windows 进入command prompt 及建立 AVD (Android Virtual Device) 及 sdcard (500M)
复制代码
C:
cd C:\Android\android-sdk-windows-1.6_r1\tools
android create avd --name my_avd1.6 --target 2 --sdcard 500M --skin HVGA-P-HTCMagic
--target 2 代表 Android 1.6 API level: 4
--sdcard 500M 代表建立新SD卡,容量 500M,可选其他容量例如 1000M
--skin HVGA-P-HTCMagic 代表使用 HTCMagic skin可选其他 skin 例如 HVGA-P-HTCHero
(5) 打开模拟器, 用 HTC Magic skin 缩小至0.8
复制代码
emulator -avd my_avd1.6 -skin HVGA-P-HTCMagic -scale 0.8