Android 中在一个程序中启动另一程序
来源:互联网 发布:淘宝的卖家中心不见了 编辑:程序博客网 时间:2024/06/16 20:56
首先通过获取另一个程序的package name,
在我们不知道pacakge name的情况下,我们可以通过adb shell 来查看
adb shell
pm list package
在这个列秒里面就可以找到我们安装了程序,可以通过查找得到,例如我要找的是有妖气,那么我就搜索u17就可以找到了。
然后调用我们自己写的方法:
private void openApp(View v,String packageName) { Context context = v.getContext(); PackageInfo pi = null; PackageManager pm = context.getPackageManager(); try { pi = pm.getPackageInfo(packageName, 0); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null); resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER); resolveIntent.setPackage(pi.packageName); List<ResolveInfo> apps = pm.queryIntentActivities(resolveIntent, 0); ResolveInfo ri = apps.iterator().next(); if (ri != null ) { packageName = ri.activityInfo.packageName; String className = ri.activityInfo.name; Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_LAUNCHER); ComponentName cn = new ComponentName(packageName, className); intent.setComponent(cn); startActivity(intent); } }
调用,例如在点击的时候调用:
@Override public void onClick(View v) { int id = v.getId(); switch (id){ case R.id.project_youyaoqi: openApp(v, "com.u17.comic.phone"); break; case R.id.project_zhonghuajunshi: openApp(v,"com.china.mobile.chinamilitary"); } }
参考:
http://blog.csdn.net/wike163/article/details/6635032
0 0
- Android 中在一个程序中启动另一程序
- iOS 在一个程序中启动另一程序
- 在一个Android程序中启动另外一个Android程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- 在Android中的一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android开发之在一个程序中启动另一个程序
- android在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- Android 在一个程序中启动另一个程序
- [BZOJ2462]矩阵模板(暴力||矩阵hash)
- 机器学习实战(五)——基于单层决策树(dicision-stump)的adaBoosting
- 虚拟化的发展历程和实现方式
- 递归算法案例分析
- 1051: C语言程序设计教程(第三版)课后习题11.5
- Android 中在一个程序中启动另一程序
- 【数学相关、规律】Vijos P1582 笨笨的L阵游戏
- 针对《SVM八股简介》的总结
- ArrayList和HashSet对的比较及HasCode分析
- Swift系统自带二维码的扫描使用
- 周线金叉
- 1017-R
- c++第二次实验--类和对象1
- redhat下qt的安装