android studio for android learning (一)
来源:互联网 发布:关于网络安全隐患论文 编辑:程序博客网 时间:2024/06/05 08:44
1. app开发的四大组件Activities,Services,Content providers, Broadcast receivers,后面将详细介绍.
2.1 An Activity 可以简单理解为用户的前端交互界面。
2.2 A services 是运行在后台的组件,如后台的音乐播放,可以和Activity交互,可以通过一个Activity来启动或是关闭services.
2.3 Content providers 主要提供管理App数据,可以将App需要的存储的数据放在文件系统中,在Content providers 允许的范围内可以查询或是修改其中的数据。
2.4 Broadcast receivers 响应系统广播。
3. 上述三种组件(除content provider)的激活是通过一个叫intent的异步信息来完成,组件属于你的APP,这个intent可以看成是一个信使,从组件中来请求一个行为,content provider不是通过intent来激活,it is activated when targeted by a request from a ContentResolver,content resolver控制着content provider所有的转换信息
4.所以
1.You can start an activity (or give it something new to do) by passing an Intent to startActivity() or startActivityForResult() (when you want the activity to return a result).2.You can start a service (or give new instructions to an ongoing service) by passing an Intent to startService(). Or you can bind to the service by passing an Intent to bindService().3.You can initiate a broadcast by passing an Intent to methods like sendBroadcast(), sendOrderedBroadcast(), or sendStickyBroadcast().4You can perform a query to a content provider by calling query() on a ContentResolver.
4.1 如果你想要对各个组件有量更进一步的了解,可以参考下面官方参考Activities 、Services 、BroadcastReceiver 、ContentProviders,这些链接需要你突破天朝的墙,如果不能破想办法或是在下面留言,或许我会告诉你怎么弄。
5. Manifest File 一个重要的文件AndroidManifest.xml,这个文件必须在你APP的root下,你所有的组件都要在这里面声明,
5.1 androidmanifest.xml文件内容,这个建立一个简单的helloworld 程序时的文件。
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.administrator.helloword"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
5.2 这个声明文件主要是声明用户权限,APP需要的最小的API level等级,声明所需要的软件和硬件,如是否需要摄像头,蓝牙… and more. 你必须用下面的方式来声明组件,不声明的组件不会显示也不会运行,注意,broadcast receivers 既能按这种方式声明,也能动态的创建。
1. < activity > elements for activities
2. < service > elements for services
3. < receiver > elements for broadcast receivers
4.< provider > elements for content providers
5.3 When you declare an activity in your app’s manifest, you can optionally include intent filters that declare the capabilities of the activity so it can respond to intents from other apps.
5.4 声明APP的要求:
5.4.1 这个是很重要的,这种声明信息指出你开发的APP需要的是什么,大多数的声明系统都不会去读他们但google play 会读,这样方便用户的选择
5.4.2 如果你的app需要摄像机 ,需要在android2.1(API Lelel7)那么你应该这样声明你的manifest文件。
<manifest ... > <uses-feature android:name="android.hardware.camera.any" android:required="true" /> <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="19" /> ...</manifest>
如果一个设备没有摄像机或是android版本低于2.1将不能从google play安装这个APP。
0 0
- android studio for android learning (一)
- android studio for android learning (二)
- android studio for android learning (四) 兼容性问题
- android studio for android learning (七) Android Log类全解
- android studio for android learning (九) android之Adapter用法
- android studio for android learning (二十八) android基础知识
- android studio for android learning (八)开机启动界面splashActivity
- android studio for android learning (十六) support-annotations简介
- android studio for android learning (十七) Toast使用详解
- android studio for android learning (二十四 )bitmap and bitmapFactory
- android studio for android learning (十) android之activity的启动和关闭
- android studio for android learning (十四) android的数据的存储sharedPreferences
- android studio for android learning (十八) android事件监听器绑定的方法详解
- android studio for android learning (三) 我的第一个APP
- android studio for android learning (五) 最新Activity理解与其生命周期
- android studio for android learning (六)在布局中常使用的单位
- android studio for android learning (六)应用程序窗体显示状态操作(requestWindowFeature等的应用)
- android studio for android learning (十一) 利用bundle在activity之间进行数据传递示例
- 正则表达式集锦(二)
- Java复习提纲
- 重载与重写的区别
- 女孩尿裤子4年,因爸爸做了一件所有父亲会做的事
- 接口的声明与使用
- android studio for android learning (一)
- js获取元素的标签名
- 系统设置之蓝牙模块分析
- 动态规划1014
- 这些竟然是身体的求救信号!你看懂了吗?
- 20个常用的正则表达式
- PPT图片怎么排列?
- DP基础_2 2016.5.16
- 刚安装的ubuntu系统如何更改输入法为中文输入法