/**
*
* @ClassName: MainActivity
* @Description: 从一个应用跳转到另一个应用
* @author guoyizhe
* @email [email protected]
* @date 2015-6-9 下午3:49:07
*
*/
public class MainActivity extends Activity {
private Intent intent = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//知道要跳转应用的包名、类名
// ComponentName comp = new ComponentName("com.gyz.mytextswitchertest", "com.gyz.mytextswitchertest.MainActivity");
// final Intent intent = new Intent();
// intent.setComponent(comp);
// intent.setAction("android.intent.action.VIEW");
//不知道类名
PackageManager pm = getPackageManager();
PackageInfo pi = null;
try {
pi = pm.getPackageInfo("com.gyz.mytextswitchertest", 0);
} catch (NameNotFoundException e) {
e.printStackTrace();
}
Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);
resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);
resolveIntent.setPackage(pi.packageName);
//找到匹配intent的所有Activity,这个方法可以在intent跳转前调用用来检测是否有符合条件的activity
List<ResolveInfo> apps = pm.queryIntentActivities(resolveIntent, 0);
ResolveInfo ri = apps.iterator().next();
if (ri != null ) {
String className = ri.activityInfo.name;
intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
ComponentName cn = new ComponentName("com.gyz.mytextswitchertest", className);
intent.setComponent(cn);
}
Button button = (Button) findViewById(R.id.btn_jump);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startActivity(intent);
}
});
}
}
原文地址:http://www.cnblogs.com/gyzboy/p/4563774.html