Android Intenet的思考(1)

简介:

Intent有两种调用方法,一种是显示调用。一种是隐式调用。

1. 显示调用,也就是我们最常用的。

使用的Intent构造函数如下: Intent(Context packageContext, Class<?> cls)

在同一个进程中,一个Activity 调用另外一个Activity 。

 

 
  1. Intent intent = new Intent(this, TestActivity.class);  
  2.    
  3. startActivity(intent);  

当然我们也可以在不同应用程序之间,也就是不同的进程之间启动Activity。

使用的Intent 构造函数:Intent(Context packageContext, Class<?> cls) 第一个是包名,第二个时Activity类名

 
  1. Intent intent = new Intent();  
  2.  intent.setClassName("com.androidtest", "com.androidtest.AndroidTest");  
  3.  main.this.startActivity(intent);  

这时候一定要修改AndroidManifest.xml 文件

在 activity 的 申明中加上<intent-filter> 如下:

 
  1. <activity android:name=".TestActivity"> 
  2.  
  3.       <intent-filter> 
  4.  
  5.           <action android:name="android.intent.action.DEFAULT" /> 
  6.  
  7.       </intent-filter> 
  8.  
  9.   </activity> 

2. 隐式调用

比如我们调用打电话的Activity。就要使用隐式调用了: Intent(String action); 代码如下:

 
  1. Intent intent = new Intent(Intent.ACTION_DIAL);  
  2. startActivity(intent);   

这种使用方式看上去比较奇怪,Intent的发送者只是指定了Action为Intent.ACTION_DIAL,那么怎么找到接收者呢?

我们自己的程序能不能接受这个Intent呢?答案是可以的,修改程序的Intent-fliter 加上这几句话变可。如:

 
  1. <activity android:name=".TestActivity"> 
  2. <intent-filter> 
  3. <action android:name="android.intent.action.DEFAULT" /> 
  4. <action android:name="android.intent.action.DIAL" /> 
  5. <category android:name="android.intent.category.DEFAULT" /> 
  6. </intent-filter> 
  7. </activity>   

这样我们的程序也能接收该Intent了。当两个程序都能接收此Intent时,Android会自动弹出对话框让你进行选择。



本文转自 最牛傻蛋 51CTO博客,原文链接:http://blog.51cto.com/zuiniuwang/718325,如需转载请自行联系原作者

相关文章
|
11月前
|
API Android开发
android:descendantFocusability
android:descendantFocusability
40 0
|
测试技术 API Android开发
Android中的 targetsdkversioin
对于Android初学开发者来说, 可能会好奇 targetsdkversioin这个配置是用来干嘛的。 也有很多一两年开发经验的 Android码农会在面试中被问到这个问题。
815 0
|
Android开发
Android 多进程通信之几个基本问题
开启多进程的方法 Android 中使用多进程只有一种方法,那就是给四大组件(Activity、Service、Receiver、ContentProvider)在AndroidMenifest中指定android:process属性 <service android:name="com.
2438 0
|
XML Android开发 数据格式
Android小知识10则(下)
Android小知识10则(上)github传送门 注: 在目录中点击可以跳转到具体代码页 目录 Chronometer和CountDownTimer计时器 Chronometer的使用 CountDownTimer的使用 正则表达...
1109 0
|
Java Android开发 Shell
|
Android开发
Android SlideMenu
第三方组件 SlideMenu 实现步骤与主要方法: 1、构建SlidingMenu menu=new SlidingMenu(context) 2、设置模式为左侧边栏  menu.setMode(SlidingMenu.LEFT); 3、设置菜单 View menuView=LayoutInflater.from(this).inflate(news_silding_menu,
1919 0