在Android模拟器上安装和卸载APK包
玩过了一天Android模拟器,也写了几个小测试程序。突然有个问题出现,如果脱离Eclipse开发环境,如何能将APK包部署给模拟器呢?
研究了一下模拟器的内存文件系统,似乎没什么发现,是一个Linux内核。
于是到google问问老外们,终于知道了,吼吼。
【安装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">
<application android:icon="@drawable/icon">
<activity android:name=".HelloAndroid" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<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 <ACTION>] [-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 <ARG_NAME> <ARG_VALUE>] [-p <PROF_FILE>]
[-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">
<application android:icon="@drawable/icon">
<activity android:name=".HelloAndroid" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<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.VIEW geo:0,0?q=tianjin
am很可能将来成为第三方lancher的基础。
【卸装APK】
与安装类似的,卸妆是利用adb执行一个卸妆指令:
D:\android\tools>adb shell rm data/app/NetScramble_1.1.apk
这里,也可以看出,Android系统是将第三方应用放在data/app目录内的。
【一些思考】
因为模拟器内运行的是一个内存文件系统,也就是说,你安装的apk文件,在模拟器被关闭后,也就不再存在了(它实际上是被安装到内存里)。所以,下次启动模拟器,依然需要再次安装APK。然后,实际测试结果并非如此...于是打开AndroidSDK目录发现,tools\lib\images的文件都被更新了。原来Android模拟器是将他的内存系统实时dump到img中保存下来的。
还有一个特别有意义的发现,是从adb shell rm而来的思考。rm本身是linux的一个文件删除指令,加上前面的shell关键字,会不会adb shell直接就能打开一个linux终端呢?实测结果果然如此!不过,Android的linux shell显然做了很多精简,大量的linux常用指令都不支持。
更多关于adb详细的使用,可以使用adb help指令来查看。
转自:http://blog.sina.com.cn/s/blog_4b07398d010095px.html
在这里小问一下,我想把android SDK包中自带的sample代码加到eclipse有没有什么好办法,我使用eclipse的import好像不行,如何有谁会的请留言。本人打算看snake游戏的代码。
同时我附上snake的apk包,大家可以按上面的方法在模拟器上安装一下玩玩。
分享到:
相关推荐
如何在Android模拟器上安装和卸载APK包
如何在Android模拟器上安装和卸载APK程序包
NULL 博文链接:https://xusaomaiss.iteye.com/blog/375794
在Android 模拟器上安装和卸载APK包的方法,需要的朋友可以参考一下
android:windows下面如何从模拟器安装和卸载APK。dos下用命令行操作安装和卸载。
Android教程之如何安装(卸载)apk文件到模拟器
android模拟器安装和apk(应用程序)安装与卸载
Android学习指南:Android_SDK简介,1. 在Android模拟器上安装和卸载APK包,2. 在Android模拟器上使用sd card生成sdcard镜像文件,启动模拟器,将资源放入到sdcard里面,使用命令adb shell 查看sdcard目录
三种方法:(必须在模拟器启动的情况下) 法一: 进入模拟器,在模拟器中点击程序"设置(setting)",->应用程序->点击想卸载的程序即可卸载!这种方法有点慢,要一个一个卸载!
安装与卸载android模拟器上的软件,同时消除其图标 解法方法: 首先你的PC上需安装了android模拟器 安装apk文件 第一:把下载的apk文件放到android sdk的安装目录的子目录tools下,如我的是:E:android-sdk-...
可以在应用商店安装部分官方已适配的安卓应用,对爱好者来说,不能自己安装APK软件包始终差点意思,本程序可以为Deepin/UOS上的Uengine安卓运行环境安装/卸载/打包自定义APK软件包,并能发送安装的APK包启动菜单到...
1、配置和搭建Android开发环境 2、创建HelloWorld 3、在Android模拟器环境中安装和卸载apk文件 4、了解Android的基本文件目录结构
2.安装Apk文件到模拟器 6 2.1 启动模拟器 6 2.2 双击安装apk.exe工具,并启动 7 2.3 双击安装Apk包 7 3. Widget的卸载 8 3.1 通过程序管理器卸载,步骤如下: 8 4.映射本地Widget路径 9 4.1双击setup.exe安装Mereo...
APK安装器就是用于安装安卓应用的工具。APK安装器可以通过将APK文件传输到Android模拟器或Android手机中执行安装,也可用于卸载,是方便的APK管理程序。
Apktool M v2.4.0 反编译 apk版,可以放到安卓手机,mumu模拟器等,功能强大 ...工具打开然后 1.做上面的操作 解压文件-->全选 就能吧分包转成apks...●卸载apk -已安装的应用程序可以从应用程序列表中删除 (新菜单项)
Android APK文件设置工具 3.0,使用方法:以后安装apk文件时, 只需双击apk文件即可安装到开启的模拟器中! 具体方法: WindowsXP:右击我的电脑--属性--选择“高级”选项卡--点击“环境变量”--点击系统变量的新建 ...
它提供了对以下方面的支持:创建新的avd ,启动avd ,创建新的android项目,构建和重建Android sdk项目,构建和重建Android ndk项目,安装和卸载apk ,运行可执行的ndk项目,在emacs上输出仿真器日志。 该工具包已...
的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...
Android Killer 是一款可视化的安卓应用逆向工具,集Apk反编译、Apk打包、Apk签名,编码互转,ADB通信(应用安装-卸载-运行-设备文件管理)等特色功能于一 身,支持logcat日志输出,语法高亮,基于关键字(支持单行...