回忆一下:我之前是怎么使用intent来打开新的Activity的?
intent.setClass(当前组件.this, 目标组件.class);
那如何我要打开外部应用呢?
比如我要通过按钮点击后,打开系统闹钟
intent.setClassName(包名, 包名+activity名);
public void onClick(View v){
//((Button)v).setText("更改后的按钮文字");
Intent intent = new Intent();
intent.setClassName("com.android.deskclock","com.android.deskclock.DeskClock");
startActivity(intent);
}
除了通过setClassName(),还可以用setComponent()来打开外部程序
//intent.setClassName("com.android.deskclock","com.android.deskclock.DeskClock");
intent.setComponent(new ComponentName("com.android.deskclock","com.android.deskclock.DeskClock"));
setClassName内部也是调用的setComponent。
本文介绍了如何使用Android中的Intent来启动应用程序内外的Activity。通过setClassName和setComponent方法,可以实现对外部应用如系统闹钟的具体Activity进行精确启动。
575

被折叠的 条评论
为什么被折叠?



