xml----Intent~~intentfiler~~action_view~~category

activity通过增加intent-fliter来标识哪些intent可以被处理,同时intent也是调度activity的主要参数。


如果使用隐式的Intent就要用到这些东西

action_view:将数据显示给用户,action_view 通常和特定的data相配合使用,用于给用户显示数据。

说白了 category就是表明当前activity可以用什么方式来启动,
CATEGORY_BROWSABLE:可以用浏览器启动
laucher_category :可以在开启程序时启动
CATEGORY_DEFAULT:可以用startActivity方法启动


category:他为执行动作的附加信息。例如:laucher_category 表示intent的接受者应用在launcher中作为程序入口应用。 属于CATEGORY_DEFAULT这个类别的,可以用 startActivity(intent)来启动Activity

CATEGORY_BROWSABLE:此类型表明ActivityAuthSuccess(豆瓣网例子)可以通过浏览器启动,需要注意的是,我们在这里定义了数据的匹配模式为scheme="haiyang",也就是说当链接为"haiyang://"模式的时候可以触发ActivityAuthSuccess这个activity来处理

//====================CATEGORY===================================
CATEGORY_BROWSABLE 目标activity可以使用浏览器来显示-例如图片或电子邮件消息.
CATEGORY_GADGET 该activity可以被包含在另外一个装载小工具的activity中.
CATEGORY_HOME 该activity显示主屏幕,也就是用户按下Home键看到的界面.
CATEGORY_LAUNCHER 该activity可以作为一个任务的第一个activity,并且列在应用程序启动器中.
CATEGORY_PREFERENCE 该activity是一个选项面板.



//====================ACTION======================================
ACTION_CALL activity  发起一个电话呼叫.
ACTION_EDIT activity  显示数据给用户来编辑.
ACTION_MAIN activity  将该activity作为一个task的第一个activity启动,不传入参数也不期望返回值.
ACTION_SYNC activity  将设备上的数据和一个服务器同步.
ACTION_BATTERY_LOW broadcast receiver  发出电量不足的警告.
ACTION_HEADSET_PLUG broadcast receiver  一个耳机正被插入或者拔出. 
ACTION_SCREEN_ON broadcast receiver  屏幕被点亮.
ACTION_TIMEZONE_CHANGED broadcast receiver  时区设置改变.


//===================例子=======================================
1.
<activity android:name="AuthSuccessActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
<data android:scheme="lovemeiting"></data>
</intent-filter>
</activity>
解释:允许AuthSuccessActivity可以用startActivity方法启动(category.DEFAULT)
CATEGORY_BROWSABLE:允许浏览器启动来调用启动他
启动模式是:http://lovemeiting 

2.
<service android:name="MapServer">
<intent-filter>
<action android:name="com.zhe.activity.Start_service"></action>
<category android:name="android.intent.category.DEFAULT"></category>
</intent-filter>
</service>

为这个service指定一个action名字,这样可以通过
Intent i = new Intent("com.zhe.activity.Start_service");
startService(i);来调用他

你可能感兴趣的:(xml,应用服务器,浏览器,Scheme)