Android两个独立的应用跳转实现方式小结
在Android应用实现过程中,有时候会遇到应用之间相互跳转的情况,比如跳转至系统设置界面、WiFi设置界面、或者其它的用户实现的应用主界面等等。这里总结了几种常见的打开其它应用activity的方式
1.使用adb shell +am的方式
am是命令行下的activity管理工具,使用am可以快速打开应用的activity。并且打开应用的主activity是不需要root权限的。比如打开系统WiFi设置界面的命令为 am start -n com.android.settings/.wifi.WifiSettings。对于自定义的应用的命令格式也类似为am start -n 应用包名/应用的启动Activity。
打开浏览器: am start -a android.intent.action.VIEW -d http://www.baidu.com
打开通话历史界面:am start -a android.intent.action.CALL_BUTTON
Browser(浏览器)的启动方法为:am start -n com.android.browser/com.android.browser.BrowserActivity
启动浏览器 :am start -a android.intent.action.VIEW -d http://www.google.cn/
拨打电话 :am start -a android.intent.action.CALL -d tel:10086
http://stackoverflow.com/a/11972805/1767800
http://stackoverflow.com/a/13380685/1767800
http://blog.csdn.net/sunrock/article/details/5675067
2.使用intent的方式
在程序中采用Runtime.getRuntime().exe执行am命令的方式可能会出现无法打开应用的情况,这时可以考虑采用intent的方式。采用intent方式和am的原理类似,只需要把intent的属性设置为am中用到的参数就可以。为了保证intent设置正确,也可以事先通过adb shell+am的方式进行验证。
Intent intent=new Intent("android.intent.action.MAIN"); intent14.setComponent(new ComponentName("com.packagename", "com.packagename.launchActivityNmae")); startActivity(intent);
http://stackoverflow.com/a/4344697/1767800