(经典)Android应用测试指南
- 格式:docx
- 大小:3.30 MB
- 文档页数:31
如何进行Android应用的可访问性和易用性测试移动应用的普及使得越来越多的人使用手机进行各种活动,包括购物、社交、娱乐等等。
然而,对于一些特殊群体的人来说,如身体残障者或老年人,使用移动应用可能会遇到一些困难。
为了确保Android应用的可访问性和易用性,我们需要进行相应的测试。
本文将介绍如何进行Android应用的可访问性和易用性测试,以确保应用对于所有用户都具有良好的体验。
一、了解可访问性和易用性在开始测试之前,我们首先需要了解可访问性和易用性的概念。
可访问性指的是移动应用对于所有用户,包括身体残障者和老年人,都具有可达到和可操作的特点。
易用性指的是移动应用的设计和功能是否容易被用户理解和使用。
了解这些概念将帮助我们更好地进行测试。
二、制定测试计划在进行测试之前,我们需要制定一个详细的测试计划。
该计划应包括测试的目标、测试的方法和测试的范围。
例如,我们可以制定测试目标为确保应用的所有功能都可以通过键盘和屏幕阅读器操作,并适配不同屏幕尺寸和字体大小的设备。
三、测试可访问性1. 使用屏幕阅读器进行测试:屏幕阅读器是一种辅助技术,可以将屏幕上的文字和控件内容转换为语音或者触觉反馈。
我们需要确保应用中的所有文本和控件都可以通过屏幕阅读器读取并使用。
2. 测试键盘操作:一些用户可能无法使用触摸屏操作手机,而是依赖物理键盘。
我们需要确保应用中的所有功能和控件都可以通过按键来操作。
3. 测试字体和颜色的适配性:用户可能根据自己的需求选择不同的字体大小和颜色模式。
我们需要确保应用的字体和颜色可以适配用户设置的偏好。
四、测试易用性1. 进行用户测试:请一些用户来测试应用,并观察他们的行为和反馈。
通过这些测试,我们可以了解用户使用应用时的瓶颈和困难,从而对应进行改进。
2. 测试导航和布局:用户在使用应用时需要进行导航和查找信息。
我们需要确保应用的导航结构清晰,布局合理,以便用户快速找到所需功能和内容。
3. 测试反应时间:应用的反应速度对于用户体验非常重要。
Android测试如何进行内存和性能优化Android应用程序的内存和性能优化是保证应用程序正常运行和提高用户体验的重要步骤。
本文将探讨Android测试的一些方法和工具,以帮助开发人员进行内存和性能优化。
一、内存优化测试1. 内存泄漏测试内存泄漏是指应用程序在不再使用一些对象时,没有正确释放它们所占用的内存。
通过以下步骤进行内存泄漏测试:- 使用Android的内存分析工具,如Android Profiler,检测内存泄漏问题。
- 使用内存监控工具,如LeakCanary,检测对象的生命周期是否正确管理。
2. 内存占用测试测试应用程序在不同场景下的内存占用情况,以便及时发现和解决内存问题。
可以使用以下方法进行测试:- 使用Android Profiler等工具,监测应用程序的内存占用情况。
- 测试不同设备上应用程序的内存占用情况,以确保应用程序在各种设备上都能正常运行。
二、性能优化测试1. 响应时间测试测试应用程序的响应时间,以确保用户在使用应用程序时能够得到良好的体验。
以下是一些测试方法:- 使用性能测试工具,如JMeter,对应用程序进行负载测试,模拟多用户同时访问应用程序的情况,以评估应用程序的响应速度。
- 测试应用程序在不同网络条件下的响应时间,以确保应用程序在各种网络环境下都能提供良好的用户体验。
2. CPU利用率测试测试应用程序的CPU利用率,以评估应用程序的性能。
以下是一些测试方法:- 使用性能测试工具,如MonkeyRunner,对应用程序进行压力测试,模拟大量用户同时操作应用程序,以评估应用程序的CPU利用率。
- 测试应用程序在不同设备上的CPU利用率,以确保应用程序在各种设备上都能正常运行。
3. 界面渲染性能测试测试应用程序的界面渲染性能,以确保应用程序的界面能够流畅地显示。
以下是一些测试方法:- 使用UI性能测试工具,如UI Automator,对应用程序的界面进行性能测试,评估界面渲染的速度和流畅度。
如何进行Android应用的崩溃和异常处理测试在进行Android应用的开发和测试过程中,崩溃和异常处理是非常重要的一部分。
通过有效的崩溃和异常处理测试,可以保证应用在面对各种异常情况时能够稳定运行并及时恢复。
本文将介绍如何进行Android应用的崩溃和异常处理测试。
一、崩溃和异常处理的重要性Android应用在运行时可能面临各种异常情况,如内存泄漏、空指针异常、未捕获的异常等,如果不进行有效的处理,这些异常可能导致应用崩溃或出现不可预料的错误。
而对于用户而言,无法接受的应用崩溃会严重影响用户体验和应用的可靠性,甚至可能导致用户流失。
因此,崩溃和异常处理的测试至关重要。
二、崩溃和异常处理测试的方法1. 异常注入测试异常注入测试是一种人为制造异常情况来测试应用的崩溃和异常处理能力的方法。
可以通过编写特定的代码来触发各种异常情况,如故意传入错误的参数、模拟网络异常等。
通过触发异常情况,测试应用的崩溃后是否能够恢复正常运行,并正确地处理异常情况。
2. 边界值测试边界值测试是一种测试应用在接近边界值时的崩溃和异常处理能力的方法。
例如,对于一个计算器应用,可以测试在输入非法字符或超出计算范围的边界值时,应用是否会崩溃或产生错误结果。
通过此类测试,可以发现应用在处理边界情况时的潜在问题,并进行相应的修复和优化。
3. 断言测试断言测试是一种通过断言语句来测试应用的正确性和稳定性的方法。
可以在关键逻辑处插入断言语句,用于检验程序的执行结果是否符合预期。
如果断言失败,就表示应用出现了异常情况,需要进行相应的异常处理。
通过断言测试,可以快速发现并修复潜在的问题,提高应用的稳定性和可靠性。
三、崩溃和异常处理测试的注意事项1. 测试覆盖率在进行崩溃和异常处理测试时,要注意测试覆盖率的问题。
要尽可能覆盖到所有可能产生异常的代码路径和逻辑分支,以保证测试的全面性和准确性。
可借助工具如代码覆盖率分析工具进行测试覆盖率的统计和分析。
Android Application Testing1.测试该应用的基本功能(该功能需详细安装需求以及业务进行测试功能点的分析和总结)2.Android特性测试(横竖屏,home键,音量键,power键等)3.各种网络状态下进行测试(包括飞行模式)4.关机、待机、切换应用之后应用是否可以正常运行5.手机并发(比如突然来电,有短信弹出,低电量,闹铃等)6.Android平台兼容性(2.2到至今的5.0)7.Android分辨率(QVGA(320*240),HVGA(480*320),WVGA(800*480),HWVGA(480x854)等8.应用在清空数据或强制退出之后是否能够正常运行9.应用跳转系统api是否正常(比如在应用中有需求跳转到系统的一个界面,再跳转回来)10.应用是否用到系统的api,查看系统是否支持该api11.应用的cpu,内存,耗电,流量调查(可和同类产品比较、cpu靠system dump命令进行跟踪、内存靠DDMS的GC查看object的上升情况以及MAT插件的分析)12.应用是否与其他的第三方应用有冲突(比如拨号的黑名单,比如和各种输入法)13.应用是否本身存在权限问题,涉及用户的哪些权限14.真实环境测试,即用户一般会在手机中安装哪些软件,进行安装之后测试15.应用安装测试16.应用的安装,卸载,SD卡安装,重复安装,升级安装等17.应用界面,用户体验测试18.应用的压力测试,长时间开机,操作(可使用monkey tool,monkey发现的NullPointException一定要fix的)19.应用的UI Automation(可使用Robotium,Athrun,Monkeyrunner等)20.应用的性能测试(利用Android Junit test,比如连续Call APP Intent来查看启动时间等)21.应用的某些特定逻辑算法测试(利用Android Junit Test来进行测试)22.应用的单元测试(一般是开发自测)23.应用是否涉及编辑平台问题,比如Mips,Arm等24.应用网络抓包检查(比如tcpcat,使用wireshark进行数据分析)25.应用对于系统的兼容性测试(Android CTS Testing)26.应用的UI像素测试,图像精准度测试(使用hierarchyviewer工具查看)。
Android应用测试:保障应用在各种设备上的稳定性Android应用测试是保障应用在各种设备上稳定性的重要环节。
在当今移动应用市场竞争激烈的背景下,一个稳定、流畅的应用体验是吸引用户的关键。
本文将从测试的目的、流程、方法和工具等方面介绍Android应用测试的重要性。
一、测试的目的1.1确保应用在不同设备上的稳定性Android平台的设备种类众多,包括不同品牌、型号、分辨率、操作系统版本等,因此在不同设备上测试应用的兼容性是至关重要的。
1.2提升用户体验一个稳定的应用可以减少闪退、卡顿等问题,提升用户体验,增加用户满意度,进而提高用户黏性和留存率。
1.3减少后期维护成本通过在各种设备上进行全面测试,可以及早发现和解决问题,避免后期维护成本过高。
二、测试流程2.1确定测试范围根据应用的功能和特点,确定需要测试的设备类型、系统版本、分辨率等,制定测试计划。
2.2编写测试用例根据测试计划,编写详细的测试用例,包括功能测试、兼容性测试、性能测试等。
2.3进行测试按照测试用例逐一进行测试,记录测试结果,包括问题描述、复现步骤、截图等。
2.4分析问题对测试过程中发现的问题进行归类和分析,找出问题的原因所在,以便进行修复。
2.5验收测试在所有问题修复后,进行最终的验收测试,确保应用在各种设备上的稳定性。
三、测试方法3.1自动化测试通过自动化测试工具,可以快速、全面地对应用进行测试,提高测试效率和覆盖面。
3.2手动测试手动测试可以模拟真实用户操作的场景,发现一些自动化测试难以发现的问题,是一个重要的补充。
3.3真机测试在真实的设备上进行测试可以更真实地模拟用户的使用环境,发现一些在模拟器上无法发现的问题。
四、测试工具4.1 Android StudioAndroid Studio是Google官方推出的Android开发工具,提供了丰富的测试工具,包括模拟器、调试工具等。
4.2 AppiumAppium是一个开源的移动应用自动化测试工具,支持Android平台,可以实现自动化测试的目的。
Android APP测试标准规范目录一、鉴权机制缺陷 (4)1.Token缺陷绕过鉴权机制 (4)2.传输数据可修改,造成越权访问 (5)3.用户登录会话失效测试 (5)(二)、客户端保护评估 (6)1.组件Content Provider配置错误,导致数据泄漏 (6)2.组件Activity配置错误,导致登录页面被绕过 (8)3.组件Service配置错误,导致非法权限提升 (9)4.组件Broadcast Receiver配置错误,导致拒绝服务、非法越权 (10)5.开启allowbackup备份权限,存在备份数据泄露风险 (11)6.开启Debuggable属性,存在应用信息篡改泄露风险 (13)7.APK客户端篡改 (13)8.反编译保护 (15)9.系统底层击键记录 (16)10.Activity 界面劫持 (18)11.安卓应用无自动锁屏功能 (19)12.开发者证书不规范,导致开发者身份信息不明 (20)13.WebView的JS对象注入漏洞 (22)(三)、敏感数据暴露 (24)1.不安全的本地存储 (24)2.明文传输用户名,密码和验证码等敏感信息 (26)3.手势密码信息本地保存 (29)4.泄露后台服务器地址 (30)5.日志信息泄露 (31)(四)、二进制保护 (32)1.动态调试 (32)2.进程调试 (33)3.内存代码注入 (34)4.内存dump (34)(五)、应用安全策略 (37)1.密码复杂度检测 (37)2.账户锁定策略 (37)3.账号登录限制 (37)4.私密问题验证 (38)5.会话安全设置 (38)6.界面切换保护 (38)7.ui信息泄露 (39)8.验证码安全性 (39)9.安全退出 (39)10.密码修改验证 (40)(六)、手势密码安全性 (40)1.手势密码复杂度 (40)2.手势密码修改和取消 (40)3.手势密码锁定策略 (41)4.手势密码抗攻击测试 (41)(七)、密码软键盘安全性 (42)1.键盘劫持 (42)2.随机软键盘布局 (43)(八)、通信安全 (44)1.通信加密 (44)2.证书有效性检测 (44)3.访问控制(仅能由手机访问) (45)一、鉴权机制缺陷1.Token缺陷绕过鉴权机制问题描述:如果被测应用没有使用有效的token机制,对登陆响应中的服务器返回的鉴权信息进行修改,即可绕过服务器鉴权,直接访问系统内部信息。
详解Android测试全流程及关键环节解析在如今移动应用领域的快速发展中,Android平台成为了最受欢迎的操作系统之一。
为了确保Android应用的质量和稳定性,进行全面的测试流程是非常重要的。
本文将详细解析Android测试的全流程以及关键环节。
一、测试策略在进行Android应用测试之前,我们需要制定一个全面的测试策略。
测试策略是指通过分析应用的特点和需求,确定测试的目标、范围、方法和资源等方面的计划。
一个好的测试策略可以提高测试的效率和质量。
1.1 确定测试目标:我们需要明确我们测试的目标是什么,是为了发现潜在的Bug还是为了确保应用的性能和稳定性。
1.2 确定测试范围:根据应用的特点和需求,确定测试的范围。
通常包括功能测试、性能测试、兼容性测试等方面。
1.3 确定测试方法:根据应用的特点选择合适的测试方法,如黑盒测试、白盒测试、灰盒测试等。
1.4 确定测试资源:确定测试所需的硬件和软件资源,如设备、测试工具等。
二、测试计划测试计划是指根据测试策略确定的测试目标和范围,制定一个详细的测试计划。
测试计划包括测试环境的搭建、测试用例的设计、测试工具的选择等。
2.1 搭建测试环境:根据应用的需求和测试策略,搭建适合的测试环境,包括硬件、操作系统、网络环境等。
2.2 设计测试用例:根据应用的功能和用户需求设计合适的测试用例。
测试用例应该包括正常情况下的测试和异常情况下的测试。
2.3 选择测试工具:根据测试的需求选择合适的测试工具,如自动化测试工具、性能测试工具等。
三、测试执行在测试执行阶段,我们需要按照测试计划进行测试,并记录测试结果。
3.1 执行测试用例:按照设计好的测试用例逐步执行测试,并记录测试结果。
在执行测试过程中,我们需要认真记录每一个Bug的具体表现和重现步骤。
3.2 Bug管理:测试过程中发现的Bug需要进行管理。
包括给每个Bug分配一个唯一的ID,对Bug进行分类、优先级排序和状态管理等。
使用ThreadingTest进行Android应用单元测试1、Android单元测试的编写Android单元测试有两种方法,首先作为java程序,可以试用JUnit Test进行测试,另外也可使用Android JUnit Test进行单元测试。
1)、JUnit Test进行单元测试JUnit对Android应用程序进行单元测试需要使用Java命令来启动或者在eclipse里面将启动的Bootstrap Entries改为JRE,但是这种只能测试逻辑代码,因为是是运行在JVM上,而不是Android系统中,所以不能测试Android有关的代码。
使用JUnit测试的代码,需要在函数的之前加@T est,函数必须为public类型,在eclipse 中,在类上右击,选择JUnit Test即可进行测试。
2)Android JUnit Test进行单元测试Android JUnit Test单元测试是一组直接或间接继承自junit.framework.Testcase的类集合,入口是InstrumentationTestRunner。
使用Android JUnit Test测试,也存在两种测试方法,测试驱动与测试代码在同一工程下和测试驱动和测试代码位于不同工程,两者之间并无巨大差异,只是在测试时,前者只安装一个App,后者安装两个App。
如下为一个单元测试的实例:步骤1:准备好需要测试的源代码拟器中的Dev Tools工具中,设置Instrumentation下显示的名称,在步骤4运行中,点击该标签,也可运行单元测试。
在TT Android JUnit Test中也是重要一步,可以设置多个单元,多个名称,每个名称尽量不要重复,以区分不同的单元测试。
步骤4:运行测试类运行测试类有三种方式,包括:1、命令行方式使用adb命令启动单元测试2、eclipse中选择Android JUnit Test运行方式在eclipse中,右击测试工程,选择run as -> Android JUnit Test3、模拟器中,使用Dev Tools在模拟器中安装该程序后,在Dev Tools工具中,选择Instrumentation下显示的与android:label同名的标签运行单元测试。
APP测试指导手册编写目的本手册编写旨在帮助刚刚入手的移动端测试人员了解移动端项目,并且了解刚刚接触一个移动端的项目如何入手,有哪些问题需要明确,有哪些问题需要注意,欢迎补充移动端产品(项目)介绍移动端产品(项目)展现在眼前的就是一个实际的app应用,支撑这个app应用的是它的后台。
后台一般有两种,一种是实际部署的后台管理系统,管理系统的基本信息和业务信息,前台仅仅做展示,查看用,如通讯录APP,掌上直播点播;另一种是后台部署的系统和前台有数据交互的,一般这种系统分为pc展现端和APP展现端,pc端和APP端的展现端存在数据交互,有共同的后台管理系统支撑这两个前台应用,如人大APP,一乡一法庭。
1功能测试1.1安装目前公司的app基本是机遇两大移动操作系统android和ios开发的,android开发的app安装文件后缀为apk,ios开发的app安装后缀名是ipaApp客户端程序的安装方式主要有如下几种:1、手机端浏览器输入下载地址2、通过二维码扫描(需要单独维护二维码信息,一般二维码是封装了下载地址,所以如果系统提供了此功能,在实施文档中必须说明二维码如何生成如何维护)3、Android平台,通过Usb连接电脑方式安装4、App store下载安装(正式发布,目前接触的项目没有正式发布的。
如果接触的项目需要在APP store上发布,需要在发布时间前预留出时间,因为提交申请到APP store后审核比较严格,需要的时间较长,具体时间需要提前确认)目前公司开发了一个APP推送平台,测试过程中可以让开发把apk放在推送平台上,测试人员通过这个平台取包,同时在test上进行备份,这样方便开发和测试的交互需求分析时需要确认系统支持哪几种安装方式,是否符合项目的要求测试重点(范围)1、安卓主要是测试移动端不同版本的操作系统是否能正常安装。
Android及IOS不同操作版本系统进行安装测试,不同版本可能会安装不成功2、安装成功:安装完成后App程序应该可以正常打开3、测试过程中,先在模拟器上安装,然后再适配机型。
AndroidApp常规测试内容以下是⼀些基本安卓 APP要测试的内容,根据不同时期测试内容不⼀样~测试内容测试类型⽬标冒烟测试Monkey1.编写adb.exe 的Monkey 命令2.通过logcat定位问题,保证软件的健壮性模糊测试 1.快速的定位软件的主要功能的实现聚程度⽤例覆盖率测试 1.通过执⾏的⽤例,推敲出软件的聚合度安装/卸载测试在真机上的安装/卸载 1.确认安装/卸载是否有问题?(覆盖安装)第三⽅软件协助安装/卸载 1.是否⽀持主流的第三⽅软件辅助安装/卸载在线升级安装及使⽤性测试在线升级1.验证数字签名2.升级后能正确使⽤3.跨版本升级4.渠道下载包升级业务功能测试业务逻辑测试 1.客户端业务正常功能点测试1.功能点正常2.前后端数据交互,页⾯显⽰及功能正常关联性测试 1.与PC端交互正常稳定性及异常性测试交互性测试1.客户端多种被打扰测试2.待机,插拔数据线等操作异常性测试 1.断电,断⽹等异常,确认客户端稳定性压⼒测试 1.通过输⼊adb命令进⾏10H以上的随机操作,确认稳定性性能测试基准性能测试1.主要测服务器借⼝,写多线程脚本2.客户端不同⽹络下响应速度⼤数据量测试 1.客户端不同⽹络下响应速度接⼝测试模块之间,系统与模块,第三⽅与模块界⾯易⽤性测试界⾯与交互性测试1.符合安卓交互规范2.⽤户的体验良好3.使⽤⽅便,快捷可⽤性测试1.可⽤性强,操作简单2.使⽤操作错误率低3.完成任务的使⽤时间短适配性测试分辨率 1.⽀持多种分辨率显⽰不同版本系统 1.⽀持多种系统运⾏不同⼚家定制系统 1.⽀持多种系统运⾏不同尺⼨ 1.⽀持多种尺⼨显⽰不同屏幕 1.⽀持多种屏幕显⽰不同⽹络 1.⽀持多种⽹络运⾏联机调试测试eclipse +android sdk+jdk+代码 1.连接真机进⼊联调模式专项测试启动时间第⼀次启动与⾮第⼀次启动时间流量启动第⼀次与⾮第⼀次,图⽚加载多的页⾯,电量后台运⾏24⼩时以及模拟⽤户使⽤2天GPU GPU过度绘制CPU内存FPSFPS稳定性测试monkey测试遍历测试固定路径压⼒测试常规测试: 10W 压⼒型测试:30W稳定性测试:50W 长时间执⾏:100W权限测试第三⽅⼯具跳出的提⽰禁⽌,是否会影响程序正常流程病毒扫描测试PC和⼿机⼯具检测安全测试腾讯⾦刚⽹测试apk反编译签名校验完整性(MD5)校验敏感信息泄漏软键盘劫持账号安全服务端接⼝安全数据通信安全⽂件夹权限xss注⼊Android控件检查数据安全清除数据影响程序的数据第三⽅⼯具,如360安全卫⼠,猎豹双卡双待影响到读取⼿机号码以及短信⽀付,特别是充值⽅⾯多语⾔页⾯UI展⽰注意输⼊法不同⼚商预装的输⼊法调⽤以及低系统输⼊法调⽤杀进程登录数据丢失杀进程,登陆信息丢失输特殊字符闪退在话题输⼊&zwj会闪退,(\^O^/)提交异常。
一、Android 的 SDK Windows 版本安装按顺序安装以下内容1.安装JDK(Java Development Kit, 即Java开发工具包)2. 安装Eclipse 集成开发环境3.安装SDK(Software Development Kit, 即软件开发工具包)4.安装ADT(Android Development Tools)插件二、Android模拟机运行打开Eclipse,如下图操作:再进入AVD Manager,创建模拟机模拟器启动成功:三、模拟机操作常见出错解决办法1.安装应用错误现象:’adb’不是内部或外部命令,也不是可运行程序或批处理文件解决方法:找对adb.exe文件的正确目录开始--运行,输入cmd,打开命令提示符,进入adb.exe所在目录。
输入adb install空格,用鼠标将apk游戏拖至命令提示符,回车出现success,表示安装成功。
进入程序,可以查看到安装的搜狗输入法:2. 安装应用错误现象:【1】segmentation fault pm install /data…解决办法:修改apk文件名为英文,名称中间不要有空格3.模拟器打不开的情况,如下截图所示:问题是因为SDK路径中出现了空格的原因,而我的SDK放在Android SDK文件夹下,遂删除了中间的空格,问题果然迎刃而解。
4.打不开AVD Manager的问题我在配置Android开发环境时,在配置AVD的时候,由于不小心是的AVD Manager.exe异常退出。
然后我再次点击AVD Manager.exe,AVD Manager.exe闪一下就消失没反应。
找了很久都没有找到解决办法。
包括重装,后来偶然发现我的AVD的数据存放目录在C:/****(具体请求不一致,不过默认在C盘)/.android下面,例如我的安装目录:C:\Documents and Settings\chinasoft\.android于是我把.android下面的内容全部删除,再次进入AVD Manager 就ok了可以使用。
5. 安装应用错误现象:error: more than one device and emulator原因:当前正在运行两个模拟器设备,即运行了1个以上模拟器或运行模拟器的同时手机正在连接PC解决方法:关闭多余模拟器设备6. 问题概述:在启动Android模拟器时出现以下错误,导致启动失败。
ERROR: the user data image is used by another emulator. aborting。
原因:系统判断你当前已经启动了另外一个emulator,可能是某些正常操作或异常退出造成的。
解决方法:进入你avd目录下:如:C:\Documents and Settings\Administrator\.android\avd\android2.3.avd删除以lock结尾的文件夹。
(我简单解释下为什么要删除这些文件呢,其实.lock是加锁,如果程序崩溃等原因导致无法清除这些以.lock结尾的文件夹,就会出现这个问题,也就是这个avd的锁没有被释放,导致avd manager以为这个avd正在使用当中。
)7.emulator: ERROR: Unable to load VM from snapshot. The snapshot has been saved for a different hardware configuration.原因:模拟器错误,无法从虚拟机上加载快照,快照已被保存为一个不同的硬件配置。
(存档错误无法读取)解决办法:Android Virtual Device Manager -> delete AVD -> new AVD重新创建个AVD,解决。
8. 我的avd创建界面又和别人不一样,怎么办,模拟器的方向键和确定键用不了,怎么解决?我自己摸索了搞掂了,在device definition里用别人定义的avd点击clone,把Input的keyb oard勾上支持键盘,然后选dpad支持方向键,最后在botton改为hardware用来支持键盘的home、menu、back键就ok了9.关于sdk安装路径错误提示为:invalid command-line parameter: Files\Android\android-sdk\tools/emulator-arm.exe. Hint: us e '@foo' to launch a virtual device named 'foo'. please use -help for more information 这个问题有两种情况:1) 安装路径中不能含有中文。
在android模拟器的安装过程中,因为使用的路径中含有中文,结果杯具了……一直提示“invalid command”。
无奈之下,只能把路径改了2) 安装路径中不能含有空格。
这个是在网上搜到的,还没遇到过这种情况,不过还是应该注意。
毕竟改路径不是一件好玩的事呀!10.某天,Android 启动模拟器时出现“Failed to allocate memory: 8”错误,模拟器无法启动,如下图:原因:设置了不正确AVD显示屏模式,4.0版默认的模式为WVGA800,改成WXGA720后导致不支持。
解决办法:编辑这个AVD,将Skin -> Build in的参数改回默认参数。
11.启动安卓应用时报错This application is not correctly embedded (wrong wmode value)这个其实是Flash报的“ErrorEvent:。
text=Error #3702: Context3D 不可用”错误被Starling变了一下。
解决方法:找到项目文件夹中的html-template,并找到index.template.html,右键使用TextEditor编辑,在params.allowfullscreen=”true”;后面加上params.wmode = "direct";最好下面的embed也这样配置下<param name="allowFullScreen" value="true" />后面加<param name="wmode" value="direct" />如果是手机项目,没有index.template.html文件,则在项目的app.xml里面改(一般是项目名-app.xml文件)。
在“</initialWindow>”前面增加两行<renderMode>direct</renderMode><fullScreen>true</fullScreen>就算已经有<fullScreen>true</fullScreen>了也要在renderMode后面加一行,要不然会出现不报错的白屏。
------------------------------------------------------------------------------------------------PS:附加正常运行的手机项目的-app.xml的initialWindow配置:<aspectRatio>landscape</aspectRatio><renderMode>direct</renderMode><fullScreen>true</fullScreen><visible>true</visible>12. 安装apk出现INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误利用adb shell进入系统,进入/data/app或者/data/data,删除跟你安装的apk同样的包名;按Ctrl+C退出系统,利用adb pull /data/system/packages.xml命令将packages.xml放到你PC 机本地,然后找到你需要的包名,删除<package>到</package>的一段数据。
例如:<package name="com.android.wallpaper" codePath="/system/app/LiveWallpapers.apk" nativeLibraryPath="/data/data/com.android.wallpaper/lib" flags="1" ft="11b7e237e00"it="11b7e237e00" ut="11b7e237e00" version="10" userId="10012">< sigs count="1">< cert index="2" />< /sigs>< /package>保存packages.xml,然后adb push packages.xml /data/system将packages.xml文件送回设备中。
如果模拟机已经启动就关闭重启;模拟机重启以后,再次adb install安装你的apk文件,看看是否success。
如果还不能成功,还有一种可能性,就是你的安装包与之前设备上的安装包签名不一致,或者你的安装包根本就没有签名。
这时候采用adb uninstall 包名卸载之前的安装包,再次adb install 安装你的apk文件。
如果还不行,请查看logcat,进一步分析具体原因。
如果你用logcat还分析不出来,那么请求神的帮助吧。
13.adbInstall安装apk错误常见列表INSTALL_FAILED_ALREADY_EXISTS 程序已经存在INSTALL_FAILED_INVALID_APK 无效的APKINSTALL_FAILED_INVALID_URI 无效的链接INSTALL_FAILED_INSUFFICIENT_STORAGE 没有足够的存储空间INSTALL_FAILED_DUPLICATE_PACKAGE 已存在同名程序INSTALL_FAILED_NO_SHARED_USER 要求的共享用户不存在INSTALL_FAILED_UPDATE_INCOMPATIBLE 版本不能共存INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 需求的共享用户签名错误INSTALL_FAILED_MISSING_SHARED_LIBRARY 需求的共享库已丢失INSTALL_FAILED_REPLACE_COULDNT_DELETE 需求的共享库无效INSTALL_FAILED_DEXOPT dex优化验证失败INSTALL_FAILED_OLDER_SDK 系统版本过旧INSTALL_FAILED_CONFLICTING_PROVIDER 存在同名的内容提供者INSTALL_FAILED_NEWER_SDK 系统版本过新INSTALL_FAILED_TEST_ONLY 调用者不被允许测试的测试程序INSTALL_FAILED_CPU_ABI_INCOMPATIBLE 包含的本机代码不兼容CPU_ABIINSTALL_FAILED_MISSING_FEATURE 使用了一个无效的特性INSTALL_FAILED_CONTAINER_ERROR SD卡访问失败INSTALL_FAILED_INVALID_INSTALL_LOCATION 无效的安装路径INSTALL_FAILED_MEDIA_UNAVAILABLE SD卡不存在INSTALL_FAILED_INTERNAL_ERROR 系统问题导致安装失败DEFAULT 未知错误四、资料整理(一).安装卸载apk(二)、版本检查------aapt dump badging testapk.apk(三)、反编译--------dexdump–d classes.dex>1.txtclasses.dex要放在platform-tools目录下1、使用命令查看APK中接口配置地址将APK应用程序后缀名.apk改为.zip,解压出classes.dex,然后执行反编译命令,如图所示2、打开1.txt,即可查看相应接口配置地址是否正确。