Android App组件之Activity 1 activit介绍 Activities 是Android的四大组件之一,其余三大组件是service.broadcast和content provider.它的主要功能是提供界面.一个acivity对应一个界面. 当一个activity因为新的activity启动而被停止时,它会收到状态变化的通知,这样的变化有多个,每个都会引起系统调用一个相应的回调方法以通知activity,这些回调方法被统称为“生命周期回调方法”.这些回调方法分别在Acti…
在Android开发完成即将发布给用户使用时,还有最后重要的一步:代码混淆,这时候,Proguard就派上用场了,大家谁也不想辛辛苦苦写的代码太容易被别人反编译过来,而Proguard就是帮我们实现这一目的的工具.关于Proguard是什么,有什么特点,可以在这个链接了解:http://proguard.sourceforge.net/,简单来说,Proguard有如下几大功能: Shink :  扫描并移除代码中无用的类.属性字段.方法                       (第一步)…
使用MVP模式来解耦activity中业务代码和界面代码.在activity中,将其中的业务抽象到presenter层:将其中的界面代码抽象到View层. MVP模式: 一个软件被划分成三层,View层,Presenter层,Model层. View层的职责是展示界面,界面绘制. Presenter层的职责是,实现各种业务逻辑,业务逻辑的代码都放在这一层. Model层的职责是数据的存储,修改,获取. 各层之间的交互: View层和Presenter层之间的通信是双向的. Presenter层和…
在学习NDK中,当我在项目的bin/classes目录下使用javah命令生成头文件时,出现了“错误: 无法访问android.app.Activity 找不到android.app.Activity的类文件”这个问题,如下 跳转到项目的src目录下使用javah命令,而不是在项目的bin/classes目录下使用javah命令即可! 无法访问android.app.Activity是说明没有引入android.jar包可以看看java -h里面的具体说明.其中有一个-bootclasspath…
在工程ndk22/bin/classes中 运行javah  com.cn.ndk22.Ndk22.Activity ,出现了.h文件 我在bin/classes目录中 ,就是无法访问, : 错误:无法访问android.app.Activity 找不到android.app.Activity 如下图所示 于是我cmd定位到ndk/src,中运行 javah com.heima.ndk.ndkActivity, 成功了就能成功了 ...我也不知道为什么.,如下图 总结:  使用javah生成.h…
在android工程的根目录使用javah生成jni 头文件时候,报找不到android.app.Activity的类文件错误. 无法访问android.app.Activity是说明没有引入android.jar包 这边有两种方式可以解决: 第一种:在src目录执行命令,javah -d ../jni com.example.hellojni.HelloJni 其中-d表示输出目录 第二种:使用 bootclasspath参数,让他指定一个android.jar包 如:javah -class…
发现当前Android的资料不是非常多,并且对于Activity的介绍也非常少.所以把官方文档的android.app.Activity的介绍翻译了一下,增加了一些自己的理解.各位假设认为我自己理解的不正确,请无视.欢迎邮件讨论. android.app  public class android.app.Activity java.lang.Object android.content.Context android.app.ApplicationContext    ViewInflate.…
有时候在appium的Desired Capabilities中需要指定被测app的appActivity,下面的方法可能会对你有所帮助. 方法一 如有你有待测项目的源码,那么直接查看源码就好.如果没有,那么请联系有源码的同学,这是推荐方法. 本文版权归乙醇所有,欢迎转载,但请注明作者与出处,严禁用于任何商业用途 方法二 如果你没有代码,那么可以反编译该app. 这里将用到2个工具,分别是dex2jar和jd-gui.你可以在这里下载目前为止的最新版本以及示例apk. 我们以工具包里的Conta…
Android app启动activity并调用onCreate() 方法时都默默地干了什么?   在AndroidManifest.xml文件中的<intent-filter>元素中有这么两句: <intent-filter>     <action android:name="android.intent.action.MAIN"/>     <category android:name="android.intent.categ…
在实施app自动化的时候,我们需要知道app 的启动activity和页面元素信息,以此启动app和定位页面元素,那么如何在没有源码的情况下找打他们呢?当然是有好的工具啦,有Android sdk自带的工具可以很好的帮助我们解决这个问题. 1.获取启动类 aapt命令(该工具位置:C:\Users\...\AppData\Local\android\Sdk\build-tools\24.0.1),配置环境变量后可以在cmd命令行打开. cd进入apk的下载目录 使用命令:aapt dump ba…