android 开发项目笔记1

1、xml文件中@string/name   @+id/name  @id/name  的用法与区别:

@string/name  一般长用于从别的资源中获取键值对

@+id/name  为控件指定名为name的id,供java代码(findViewByID)或xml代码(@id/name)中去引用

@id/name  xml文件中引用id为name的控件


2、不要忘记在AndroidManifest.xml中声明新添加的Activity、Service、BroadcastReceiver、ContentProvider等,否则编译会通过,但是执行时程序会崩溃


 3、xml文件中也可以适当的注释

<!--中间部分是注释-->


 4、 对于Activity可使用setTheme(int resid)方法来设置窗口的风格包括是否现实ActionBar、以对话框的形式显示窗口等。


5、BroadcastReceiver用于监听Android系统中的其他组件。通过实现子类,重写onReceive(Context context,Intent intent)方法来监听“感兴趣(通过intentfilter配置)”的系统级广播。

实现BroadcastReceiver后,有两种方法注册系统级的时间监听器。

Java中Context.registReceiver()

AndroidManifest.xml文件中用<receiver/>元素完成注册。


6、ContentProvider用于不同的App之间的数据交换,主要作用是暴露自己的数据,与之对应的使用ContentResolver来访问暴露的数据。


7、Intent的作用是不同的组件之间通信的载体。可以启动另一个Activity、Service、BroadcastReceiver。

启用另一个Activity使用  startActivity(Intent intent)或startActivityForResult(Intent intent,int requestCode)

启用Service使用  startService(Intent intent)或bindService(Intent service,ServiceConnetion conn,int flags)

启用BroadcastReceiver使用 sendBroadcast(Intent intent)、sendStickyBroadcast(Intent intent)或sendOrderedBroadcast(Intent intent,String receivePermission)


8、Intent的显式与隐式

显式  Intent明确指定需要启动或者出发的组件的类名

隐式  Intent只指定需要启动或者出发的组件应该满足怎样的条件,配合IntentFilter来声明需要满足的条件。

android 开发项目笔记1

上一篇:在Android中用Handler延迟执行


下一篇:Android APK反编译详解(附图)(转)