如何在android应用程序中启动其他apk程序,被启动程序退出后返回之前的程序
2012-08-17 18:47
411 查看
Android开发有时需要在一个应用中启动另一个应用,比如Launcher加载所有的已安装的程序的列表,当点击图标时可以启动另一个应用。
一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动:
viewsource
print?
但是更多的时候,我们一般都不知道应用程序的启动Activity的类名,而只知道包名,我们可以通过ResolveInfo类来取得启动Acitivty的类名。
下面是实现代码:
viewsource
print?
不過这个只是实现启动其它APK应用的功能
被启动程序退出后,如何返回前一应用呢?纠结中
一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动:
1 | Intentintent= new Intent(Intent.ACTION_MAIN); |
2 | intent.addCategory(Intent.CATEGORY_LAUNCHER); |
3 | ComponentNamecn= new ComponentName(packageName,className);//classname是"包名.activityName" |
4 | intent.setComponent(cn); |
5 | startActivity(intent); |
下面是实现代码:
01 | private void openApp(StringpackageName){ |
02 | PackageInfopi=getPackageManager().getPackageInfo(packageName, 0 ); |
03 |
04 | IntentresolveIntent= new Intent(Intent.ACTION_MAIN, null ); |
05 | resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER); |
06 | resolveIntent.setPackage(pi.packageName); |
07 |
08 | List<ResolveInfo>apps=pm.queryIntentActivities(resolveIntent, 0 ); |
09 |
10 | ResolveInfori=apps.iterator().next(); |
11 | if (ri!= null ){ |
12 | StringpackageName=ri.activityInfo.packageName; |
13 | StringclassName=ri.activityInfo.name; |
14 |
15 | Intentintent= new Intent(Intent.ACTION_MAIN); |
16 | intent.addCategory(Intent.CATEGORY_LAUNCHER); |
17 |
18 | ComponentNamecn= new ComponentName(packageName,className); |
19 |
20 | intent.setComponent(cn); |
21 | startActivity(intent); |
22 | } |
23 | } |
被启动程序退出后,如何返回前一应用呢?纠结中
相关文章推荐
- 如何在android应用程序中启动其他apk程序,被启动程序退出后返回之前的程序?
- Android如何实现程序按下两次返回键退出应用程序?
- android应用程序中启动或卸载其他apk程序
- 如何在应用程序中启动其他程序(三种方法)
- [置顶] 【Android】双击返回键,退出android应用程序 双击两次退出程序提示功能 三种实现方法
- Android 应用程序(APK) 如何获得系统签名权限 强制关闭程序(后台进程)
- android应用程序如何退出?探究程序退出的方法
- Android如何做到应用程序图标隐藏,由第三方程序显示启动
- Android中如何实现按两次返回键退出程序
- Android应用如何启动其他应用程序
- 关于android 多个Activity应用程序按返回键退出程序问题
- 【Android】双击返回键,退出android应用程序 双击两次退出程序提示功能 三种实现方法
- Android如何做到应用程序图标隐藏,由第三方程序启动
- 关于android 多个Activity应用程序按返回键退出程序问题
- UNITY3D android 启动其他程序,启动apk C#代码
- 之前账号的文章3:android私有存储目录下的文件如何让其他程序有权限打开
- UNITY3D android 启动其他程序,启动apk C#代码
- Android 应用程序(APK) 如何获得系统签名权限 强制关闭程序(后台进程)
- android 如何内置/预置/预编译文件(执行程序,应用程序,apk, jar, lib 等任意文件)到系统中
- Android开发如何双击返回键退出程序