首页 > 移动平台 > 详细

Android Intent 隐式

时间:2018-10-13 16:28:49      阅读:206      评论:0      收藏:0      [点我收藏+]

隐式intent

xml

<!--在意图过滤器中-->
<intent-filter>
    <action android:name="android.intent."/>
    <category android:name="android.intent.category.DEFAULT"/>
    <data android:mimeType="application/person"/>
    <data android:scheme=""
          android:host="">
</intent-filter>
<!--android:action
category
URI和数据类型 -->
    

一个android(理解为匹配机制)中可以定义0-1个action,0-n个category, 0-1个data

一个intent-filter中可以定义多个action,category,data

MainActivity 中

1.setAction

Intent intent = new Intent();  
intent.setAction("abcdefg");  
startActivity(intent);  

2.构造方法直接设置

Intent intent = new Intent("abcdefg");  
startActivity(intent); 

有几点需要注意:

1、 这个Activity其他应用程序也可以调用,只要使用这个Action字符串。这样应用程序之间交互就很容易了,例如手机QQ可以调用QQ空间,可以调用腾讯微博等。

因为如此,为了防止应用程序之间互相影响,一般命名方式是包名+Action名,例如这里命名"abcdefg"就很不合理了,就应该改成"com.example.app016.MyTest"。

2、 当然,你可以在自己的程序中调用其他程序的Action。 例如可以在自己的应用程序中调用拨号面板:

Intent intent = new Intent(Intent.ACTION_DIAL);  
// 或者Intent intent = new Intent("android.intent.action.DIAL");  
// Intent.ACTION_DIAL是内置常量,值为"android.intent.action.DIAL"  
startActivity(intent);  

参考

Android Intent 隐式

原文:https://www.cnblogs.com/pcmpcm/p/9783213.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!