Andriod:如何卸载模拟器上已经安装的应用程序?

时间:2022-10-16 04:43:02

根据学习对HelloWorld进行手术的时候,遇到了一个问题:

就是在修改了布局后,重新链接模拟器时报错:

Installing helloworld.apk... Re-installation failed due to different application signatures. You must perform a full uninstall of the application. WARNING: This will remove the application data! Please execute 'adb uninstall com.china.helloworld' in a shell. Launch canceled!

这是怎么回事呢?

原因是安装的apk程序签名不一样导致的,在发布到android market上时apk的签名是有jarsigner和keytool生成的,然后通过adb install安装的apk文件则会自动签上debug权限,两种的RSA散列不同所以会出现这样的问题,解决的方法就是先卸载了原来的:"You must perform a full uninstall of the application".

根据提示"Please execute 'adb uninstall com.china.helloworld' in a shell"知道卸载的方式为通过cmd命令adb。

那好吧...试试这样卸载行不行

cmd->cd D:/android-sdk-windows/tools->adb uninstall com.china.helloworld

结果:

Andriod:如何卸载模拟器上已经安装的应用程序?

搜索了一下 果然我的SDK里面没有这个ADB工具。。。。。-_-!

[ 转自:http://www.hiapk.com/bbs/thread-623-1-1.html ]

那这个adb究竟是个什么呢?

ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机). 它的主要功能有

  • 运行设备的shell(命令行)
  • 管理模拟器或设备的端口映射
  • 计算机和设备之间上传/下载文件
  • 将本地apk软件安装至模拟器或android设备

ADB是一个 客户端-服务器端 程序, 其中客户端是你用来操作的电脑, 服务器端是android设备.

安装ADB方法:

电脑上需要安装客户端. 客户端包含在sdk里. 设备上不需要安装, 只需要在手机上打开选项settings-applications-development-USB debugging. 对于Mac和Linux用户, 下载好的sdk解压后, 可以放~或者任意目录. 然后修改~/.bash_profile文件, 设置运行环境指向sdk的tools目录. 具体是打开~/.bash_profile文件(如果没有此文件也可以自行添加), 在里面加入一行: export PATH=${PATH}:<你的sdk目录>/tools 例如:

然后就可以使用adb命令了. 嫌安装麻烦的同学其实也可以省去上面安装步骤, 直接输入完整路径来使用命令, 例如:

对于windows xp用户, 需要先安装usb驱动 Andriod:如何卸载模拟器上已经安装的应用程序? android_usb_windows.zip (1.33 MB)

, 然后如果你只打算使用adb而不想下载整个sdk的话, 可以下载这个单独的adb工具包 Andriod:如何卸载模拟器上已经安装的应用程序?adb_win.zip (571.56 KB)

下载后解压, 把里面 adb.exe 和 AdbWinApi.dll 两个文件放到系统盘的 windows/system32 文件夹里就可以了. 如图:

Andriod:如何卸载模拟器上已经安装的应用程序?

现在说下ADB常用的几个命令:

1.查看设备

adb devices

这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 2. 安装软件

adb install <apk文件路径>

这个命令将指定的apk文件安装到设备上

3. 卸载软件

adb uninstall <软件名>

adb uninstall -k <软件名>

如果加 -k 参数,为卸载软件但是保留配置和缓存文件

4. 登录设备shell

adb shell

adb shell <command命令>

这个命令将登录设备的shell. 后面加<command命令>将是直接运行设备命令, 相当于执行远程命令

5. 从电脑上发送文件到设备

adb push <本地路径> <远程路径>

用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机) 6. 从设备上下载文件到电脑

adb pull <远程路径> <本地路径>

用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑

7. 显示帮助信息

adb help

这个命令将显示帮助信息

PS.

我是把下载下来的文件放到了我SDK安装的目录D:/android-sdk-windows/tools下,在cmd中查询设备,跟上图反应一致(模拟器没开着...):

Andriod:如何卸载模拟器上已经安装的应用程序?

开启模拟器,可以从应用列表中看到helloworld应用程序:

Andriod:如何卸载模拟器上已经安装的应用程序?

进入cmd,查看当前链接设备为模拟器-5554,如下:

Andriod:如何卸载模拟器上已经安装的应用程序?

使用adb命令行删除helloworld应用,得到结果为Success:

Andriod:如何卸载模拟器上已经安装的应用程序?

此时,进入模拟器可以看到helloworld程序已经被删除了:

Andriod:如何卸载模拟器上已经安装的应用程序?的更多相关文章

  1. unfortunately&comma;&ast;&ast;&ast;&ast;&ast;&ast;&ast;&ast;&ast;&ast;&ast; has stopped及卸载模拟器上的多余不用apk

    虽然不知道是怎么了,但是项目进不去了,害的我一脸雾水,百度了下好像没什么人遇到过这问题,都没找到解决办法,那只好来个简单粗暴的,卸载重新安装apk ,希望有大神知道原因和其他方法的欢迎留言或者评价给出 ...

  2. &lbrack;Android&rsqb; 判断手机上是否安装了某个程序

    http://blog.csdn.net/xiaodongrush/article/details/9320135 1. 首先得到该程序的包名 这个连上手机ADB,看logcat就能看到.比如:QQ客 ...

  3. 如何在Android模拟器上安装apk文件

    1.运行SDK Manager,选择模拟器,并运行模拟器 SDK Manager应用 2.将需要安装的apk文件复制到platform-tools目录下(默认在:D:\tools\android\ad ...

  4. Appium&plus;python自动化19-iOS模拟器&lpar;iOS Simulator&rpar;安装自家APP

    前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...

  5. Appium&plus;python自动化19-iOS模拟器&lpar;iOS Simulator&rpar;安装自家APP【转载】

    前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...

  6. Android 开发 关于APP无法安装到Android模拟器上的问题

    我们在创建一个app后,打算安装到Android模拟器上.可能会出现无法安装,或者提示已经安装无法卸载的问题.这个时候需要添加兼容CPU. 选择 build.gradle 文件打开添加如下代码: an ...

  7. flash bulider 生成app无法安装在xcode模拟器上

    使用flash bulider开发app在ios模拟器上运行,出现以下错误 错误提示是isb与当前设备的osx不符合.当前使用airsdk版本是4.0,xcode5.1.1. 查看了air13sdk的 ...

  8. mumu模拟器安装xposed--如何在android模拟器上进行root

    问题描述 安装xposed表示failed to access root权限,新版的mumu模拟器没有了root选项,需要自己root. 1.先关掉应用兼容性,然后重启 电脑一般都是x86的,mumu ...

  9. 终端:Xcode模拟器上安装&period;app方法

    有的时候,我们可能需要将别人的Xcode运行之后的程序包(xxx.app)安装在自己的模拟器上,如下我将介绍如何通过终端来安装. 实现 获取自己Xcode生成的xxx.app steps 1:在工程d ...

随机推荐

  1. angular学习笔记&lpar;二十九&rpar;-&dollar;q服务

    angular中的$q是用来处理异步的(主要当然是http交互啦~). $q采用的是promise式的异步编程.什么是promise异步编程呢? 异步编程最重要的核心就是回调,因为有回调函数,所以才构 ...

  2. jquery extend中

    var $=123; <src="jquery.js"> //加载jquery.js的时候           里面有句 _$=window.$,保存123的 //no ...

  3. 控制台程序的参数解析类库 CommandLine

    C#控制台程序的参数解析类库 CommandLine简单使用说明 前言 C#开发的控制台程序,默认接收string[] args参数.如果有多个参数需要输入时,可以按照顺序依次输入:但如果有些参数不是 ...

  4. vue通过id从列表页跳转到对应的详情页

    1. 列表页:列表页带id跳转到详情页 详情页:把id传回到后台就可以获取到数据了 2.列表页跳转到详情页并更改详情页的标题 列表页:带id和页面标题的typeid跳转到详情页 详情页:在html绑定 ...

  5. NancyFx-打造小型 WebAPI 與 Microservice 的輕巧利器

    https://github.com/NancyFx/Nancy 在做非網站系統整合時,我很愛用一招:寫個 Process 提供 WebAPI 介面給其他系統呼叫,不管你用什麼烏語言鬼平台,怎麼可能找 ...

  6. webpack8--删除dist目录,压缩分离后的CSS

    一.删除dist目录 有时候我们需要在打包文件之前删除之前打包的dist目录,如何做? 1.安装new cleanWebpackPlugin(['dist']) npm install clean-w ...

  7. linux 脚本 逻辑关系的写法及区别

    今天总结一下linux shell中逻辑关机表达方式. 逻辑与的表达:1).if [ $xxx=a -a $xx=b ] 2).if [ $xxx=a ] && [  $xx=b ]逻 ...

  8. ubuntu and centos各种上网代理设置

    1.Ubuntu 一. apt-get 代理设置 由于公司通过代理上网,firefox的代理设置很容易就搞定了,但是通过apt-get安装软件还是不行,于是,查阅了很多资料,最多的方法就是网上流传的三 ...

  9. Spark RDD API扩展开发

    原文链接: Spark RDD API扩展开发(1) Spark RDD API扩展开发(2):自定义RDD 我们都知道,Apache Spark内置了很多操作数据的API.但是很多时候,当我们在现实 ...

  10. 【转】JAVA 并发编程-多个线程之间共享数据

    原文地址:http://blog.csdn.net/hejingyuan6/article/details/47053409# 多线程共享数据的方式: 1,如果每个线程执行的代码相同,可以使用同一个R ...