life02

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  197 随笔 :: 3 文章 :: 37 评论 :: 0 Trackbacks
启动外部程序

 
http://blog.csdn.net/xcookies/article/details/6694871


1.通过包名启动(只能启动外部程序中Launcher的Activity)

通过自己编写的程序启动另一个已安装的应用程序。

PackageManager packageManager = Start_RemoveSoftActivity.this.
getPackageManager();

Intent intent = packageManager.getLaunchIntentForPackage(“应用程序包名");(
即你想启动的应用程序中AndroidManifest.xml中package的参数值)

你可以在intent中添加想要的data以及action
参数,使启动的应用程序可以获取相应的参数信息。

你也可以在启动前,获取PackageInfo
,来检测你想启动的应用程序是否已经安装,如果没有安装可以弹出友好提示。

 

2.通过包类名

Intent i = new Intent();   

// 01.通过指定包类名,不需要修改被调用程序   

i.setClassName("com.android.test2", "com.android.test2.Test2");   

// 使用Component,效果和上面是一样的   

// i.setComponent(new ComponentName("com.android.test2", "com.android.test2.
Test2"));    

 

3.通过Action

// 同时需要修改被调的Activity所在应用中的manifest文件,在其intent-filter
中添加上:   

// <action android:name="com.android.test2.action.Test2"> <!-- 对应下面
setAction的值 -->   

// <category android:name="android.intent.category.DEFAULT" /> <!-- 必须添加
-->   

i.setAction("com.android.test2.action.Test2");  
posted on 2012-02-29 15:15 life02 阅读(502) 评论(0)  编辑 收藏 引用 所属分类: Android开发

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理