Enjoy yourself,and don't care about others' thinking!
----TiGERTiAN
BlogJava
首頁
新隨筆
聯系
聚合
管理
隨筆-348 評論-598 文章-0 trackbacks-0
Android的Intent和IntentFilter應用說明一例
很多人對文檔中的Intent和IntentFilter不理解是什么意思,我這里舉例解釋下。
Intent字面意思就是目標,目的。通俗一點,需要達成某些目標,則需要提供一些動作,這些目標的分類,以及達成這些目標所需要的一些數據等等。Android中的Intent通過Action,Category和data等屬性進行了相應的描述,我們想做某些事情(達成某些目標),就需要填寫這些參數的部分或全部,這樣Android才會幫助我們自動的去進行某些操作。
IntentFilter是配合Intent而生的,你有目標行動或者結果,那么那些行動和結果就會有他完成的特定要求,這些要求就是IntentFilter,可以理解為Intent和IntentFilter是相對應的。
<
activity
android:name
=".TestService"
android:label
="@string/app_name"
>
<
intent-filter
>
<
action
android:name
="android.intent.action.MAIN"
/>
<
category
android:name
="android.intent.category.LAUNCHER"
/>
<
action
android:name
="android.intent.action.STORE_REQUEST"
></
action
>
<
category
android:name
="android.intent.category.ALTERNATIVE"
/>
<
category
android:name
="android.intent.category.SELECTED_ALTERNATIVE"
/>
</
intent-filter
>
<
intent-filter
>
<
action
android:name
="android.intent.action.TIGERTIAN"
></
action
>
<
category
android:name
="android.intent.category.DEFAULT"
></
category
>
<
data
android:scheme
="x-id"
></
data
>
</
intent-filter
>
<
intent-filter
>
<
action
android:name
="android.intent.action.EDIT"
></
action
>
<
category
android:name
="android.intent.category.DEFAULT"
></
category
>
<
category
android:name
="android.intent.category.BROWSABLE"
></
category
>
</
intent-filter
>
</
activity
>
上面的Activity有三個Filter,第一個是給Android系統用的,表示這個Activity可以顯示在桌面上(Launcher中)。同時Alternative表明,這個Activity可以
變成OptionMenu,供其他Activity直接調用。
后面兩個Filter就是我自定義的了,第二個Filter可以在其他Activity中用如下方法直接調用:
Uri uri
=
Uri.parse(
"
x-id://www.google.com/getDetails?id=123
"
);
Intent in
=
new
Intent();
in.setAction(
"
android.intent.action.TIGERTIAN
"
);
in.addCategory(Intent.CATEGORY_DEFAULT);
in.setData(uri);
//
in.setClassName("com.tigertian.service", "com.tigertian.service.TestService");
TestActivity.
this
.startActivity(in);
在Filter配置中CATEGORY_DEFAULT是不可缺少的,想調用這個Service,可以不指定Class,但其他條件必須匹配(CATEGORY_DEFAULT可以不設置,Android默認會自動加上),通過Action,category和data就可以調用相應的Activity了,這是Android幫你做的,當然如果系統中存在多個匹配這些條件的Activity或者Service,Android根據優先級進行調用。
第三個調用方式如下:
Uri uri
=
Uri.parse(
"
x-id://www.google.com/getDetails?id=123
"
);
Intent in
=
new
Intent();
in.setAction(Intent.ACTION_EDIT);
in.addCategory(Intent.CATEGORY_BROWSABLE);
//
in.setData(uri);
//
in.setComponent(new ComponentName("com.tigertian.service", "com.tigertian.service.TestService"));
TestActivity.
this
.startActivity(in);
看到沒有?可以不指定CATEGORY_DEFAULT,Android自動幫你添加。就是這么簡單。
---------------------------------------------------------
專注移動開發
Android, Windows Mobile, iPhone, J2ME, BlackBerry, Symbian
posted on 2010-02-03 18:01
TiGERTiAN
閱讀(37703)
評論(11)
編輯
收藏
所屬分類:
Java
、
Android
評論:
#
re: Android的Intent和IntentFilter應用說明一例 2010-09-16 17:30 |
講的什么東西!!
IntentFilter是配合Intent而生的,你有目標行動或者結果,那么那些行動和結果就會有他完成的特定要求,這些要求就是IntentFilter,可以理解為Intent和IntentFilter是相對應的。
后面的列子也看不懂!
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2010-09-16 17:32 |
TiGERTiAN
@ 講的什么東西!!
你一點都不學習,當然看不懂了。
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2010-09-16 17:56 |
講的什么東西!!
//in.setClassName("com.tigertian.service", "com.tigertian.service.TestService");
這個東西到底是給我們的提示還是沒有用的東西呀,
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2010-09-17 14:26 |
講的什么東西!!
你這個代碼調不通
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2011-03-21 14:55 |
gangbener
你好,我嘗試了之后代碼運行均無誤,但是我想要更加明確的運行結果,因為按照上面的代碼運行后只能在DDMS中查看可以正常運行,但是并不知道在IntentFilter中設置的屬性是否起作用了。我是在一個Activity中實現的,即,我在一個名為“intentExample”的Activity的intentExample Menifest文件中寫入了上面三個intentfilter,并在該Activity中調用intentExample.this.startActivity(in)。
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2013-02-26 14:30 |
zcmain
精簡干練 頂。。
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例[未登錄] 2013-05-08 23:01 |
wang
垃圾
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2013-08-01 15:27 |
魏滋瓏
受益了 謝謝LZ 講的這么詳細
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例 2013-08-23 16:51 |
awander
簡明!通透!
多謝了!
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例[未登錄] 2013-10-29 16:27 |
lee
@TiGERTiAN
這是從哪里抄的什么東西的,亂七八糟的。
回復
更多評論
#
re: Android的Intent和IntentFilter應用說明一例[未登錄]
2014-11-12 14:24 |
Arlen
大家不明白的就是IntentFilter,而你并沒有舉什么例子,看這評論,大家都看不懂的。。。不過還是多謝分享。
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
OSGi and Hadoop and Node.js
javacc工具小記
MyEclipse 6.5新序列號,到2013年
OtaNotifier.java
Java中無符號整數
C#的BinaryWriter和Java的DataInputStream之間的數據相互轉換
在Mac下面下載Android源代碼
[轉]Java通過XML Schema校驗XML
[轉]JAVA上加密算法的實現用例
LG GW880(Ophone)開啟ADB調試模式
專注移動開發--Windows Mobile, Android, iPhone, J2ME, BlackBerry, Symbian, Windows Phone
慢慢混,慢慢學
<
2014年11月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(43)
給我留言
查看公開留言
查看私人留言
隨筆分類
(402)
Ajax(4)
Android(58)
BlackBerry(8)
C/C++(3)
Design Patterns(6)
Discuz!NT(1)
DotNet(26)
Feeling(61)
Flex(4)
Grails(2)
Hibernate(1)
iPhone(5)
J2ME(11)
Java(99)
JSF(26)
Linux(18)
MapXtreme(9)
Objective c(1)
Oracle(6)
Other technique(20)
Perl/Python(1)
Roller (10)
Symbian
VB/ASP(7)
WebWork(3)
Windows Mobile(10)
WindowsPhone(2)
隨筆檔案
(306)
2017年5月 (1)
2016年8月 (1)
2015年11月 (1)
2015年2月 (1)
2015年1月 (1)
2013年12月 (1)
2013年5月 (1)
2013年4月 (1)
2012年9月 (1)
2012年7月 (1)
2012年6月 (1)
2012年5月 (2)
2012年4月 (1)
2012年2月 (2)
2012年1月 (1)
2011年11月 (2)
2011年10月 (1)
2011年9月 (1)
2011年8月 (2)
2011年7月 (3)
2011年6月 (2)
2011年3月 (3)
2011年2月 (4)
2011年1月 (15)
2010年12月 (1)
2010年11月 (2)
2010年10月 (6)
2010年9月 (12)
2010年8月 (3)
2010年7月 (2)
2010年6月 (6)
2010年5月 (14)
2010年4月 (7)
2010年3月 (16)
2010年2月 (10)
2010年1月 (14)
2009年12月 (12)
2009年11月 (5)
2009年10月 (3)
2009年9月 (2)
2009年8月 (3)
2009年6月 (1)
2009年4月 (2)
2009年3月 (2)
2009年1月 (3)
2008年12月 (3)
2008年11月 (20)
2008年10月 (17)
2008年9月 (3)
2008年4月 (1)
2008年3月 (2)
2008年2月 (8)
2008年1月 (1)
2007年11月 (2)
2007年10月 (13)
2007年9月 (3)
2007年7月 (4)
2007年6月 (2)
2007年5月 (12)
2007年4月 (15)
2007年3月 (6)
2007年2月 (2)
2007年1月 (1)
2006年7月 (2)
2006年4月 (1)
2006年1月 (1)
2005年11月 (1)
2005年8月 (1)
2005年7月 (9)
相冊
我正在讀的書
我的好友們
JavaBy
有心就有翼 有夢就會飛--MC
搜索
積分與排名
積分 - 810899
排名 - 50
最新評論
1.?re: Hibernate三種狀態的區分,以及save,update,saveOrUpdate,merge等的使用[未登錄]
哈哈~
--a
2.?re: onInterceptTouchEvent和onTouchEvent調用時序
@米其林的微笑
在你的子view重寫ontouchevent方法就行
--kxt
3.?re: Android彈出撥號界面和撥打電話實現
這找不到call是怎么回事?現在有別的方法實現這個功能嗎?
--firetomato
4.?re: Android彈出撥號界面和撥打電話實現
請我dial和call方法有什么區別么?
--jaime
5.?re: Android文字跑馬燈控件(文本自動滾動控件)
如何讓滾動的速度快一點啊??
--學鳥
閱讀排行榜
1.?onInterceptTouchEvent和onTouchEvent調用時序(38704)
2.?Android的Intent和IntentFilter應用說明一例(37703)
3.?Hibernate三種狀態的區分,以及save,update,saveOrUpdate,merge等的使用(34340)
4.?Android中短信攔截解決方案(31087)
5.?Android中ContentProvider和ContentResolver使用入門(21426)
評論排行榜
1.?【JSF】Richfaces復選框樹(Checkbox tree)的權限分配的解決方案(69)
2.?JSF中動態生成HtmlMessage控件出錯的解決辦法(38)
3.?hibernate中at org.hibernate.tuple.AbstractEntityTuplizer.createProxy(AbstractEntityTuplizer.java:372)異常的解決方法(27)
4.?這兩天用Flex寫了一個多媒體播放器(19)
5.?Android文字跑馬燈控件(文本自動滾動控件)(17)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 TiGERTiAN
主站蜘蛛池模板:
亚洲免费福利视频
|
丝瓜app免费下载网址进入ios
|
亚洲欧洲免费视频
|
亚洲AV无码不卡在线观看下载
|
亚洲欧洲日产专区
|
a在线观看免费视频
|
免费一级国产生活片
|
国产色在线|亚洲
|
99在线观看精品免费99
|
日日噜噜噜噜夜夜爽亚洲精品
|
亚洲va中文字幕
|
国产无人区码卡二卡三卡免费
|
国产精品国产亚洲精品看不卡
|
午夜肉伦伦影院久久精品免费看国产一区二区三区
|
性xxxxx免费视频播放
|
亚洲精品无码不卡在线播放HE
|
亚洲欧美在线x视频
|
免费下载成人电影
|
久久综合亚洲鲁鲁五月天
|
不卡视频免费在线观看
|
亚洲国产日韩成人综合天堂
|
亚洲AV第一页国产精品
|
xxxxx做受大片在线观看免费
|
日韩免费电影在线观看
|
亚洲人xxx日本人18
|
1000部拍拍拍18勿入免费凤凰福利
|
精品亚洲永久免费精品
|
中文字幕成人免费高清在线
|
亚洲乱码中文字幕综合234
|
在线观看亚洲免费
|
日韩免费电影在线观看
|
亚洲国产成人AV在线播放
|
免费无码又爽又刺激聊天APP
|
亚洲欧洲日韩在线电影
|
4虎1515hh永久免费
|
亚洲综合无码一区二区
|
亚在线观看免费视频入口
|
亚洲av无码一区二区三区乱子伦
|
中国好声音第二季免费播放
|
在线亚洲97se亚洲综合在线
|
国产精品成人69XXX免费视频
|