資料來源:http://slashgill.blogspot.com/2010/10/intent.html

只要利用adb logcat ,再搭配使用setComponet(),就可以輕易的呼叫第三方程式(不在自己的application內)。
詳細用法參考原文:
http://developer.android.com/reference/android/content/Intent.html#setComponent%28android.content.ComponentName%29

比如我自己的程式想執行Android裡面的Settings,先用adb logcat看系統是如何呼叫Settings的

I/ActivityManager( 60): Starting activity: Intent { act= android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp= com.android.settings/.Settings }
I/ActivityManager( 60): Displayed activity com.android.settings/.Settings: 1205 ms (total 1205 ms)

只要有這個cmp就可以呼叫Settings了

public class Main extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent i = new Intent();
ComponentName comp = new ComponentName("com.android.settings", "com.android.settings.Settings");
i.setComponent(comp);

startActivity(i);
}
}
另外有些程式要被執行,Intent還要多加搭配Intent.setData()或者是Intent.setAction()等方式。比如:想要開啟Browser,而且是開啟tw.yahoo.com的網頁,程式碼如下:
Intent i = new Intent();
ComponentName comp = new ComponentName("com.android.browser", "com.android.browser.BrowserActivity");
i.setComponent(comp);
Uri uri = Uri.parse("http://tw.yahoo.com");
i.setData(uri);

startActivity(i);

参考:

android使用setComponent启动另外一个程序

更多相关文章

  1. Android(安卓)将每三个数字加上逗号处理(通常使用金额方面的编辑)
  2. 【翻译】Android(安卓)Support Library Setup(三)
  3. Android(安卓)Framework 分析
  4. Android之targetSdkVersion详解
  5. AndroidManifest 解析
  6. OPhone开发环境设置
  7. Android(安卓)C程序打印logcat日志
  8. Android(安卓)一些常用跳转应用(其实查源码是一样的但留着Copy的
  9. Android如何防止apk程序被反编译

随机推荐

  1. Android读取联系人信息(姓名,电话,地址,邮箱,
  2. 【转】 Android(安卓)Layout之三:Ralative
  3. Lottie Android(安卓)初探
  4. Android(安卓)FrameWork——Binder机制详
  5. Android培训班(103)内核入口汇编3
  6. Android(安卓)SharedPreferences存储的正
  7. Android(安卓)APP tcpdump抓包方法
  8. android使用datepicker计算年龄
  9. Android(安卓)自定义控件实现ListView索
  10. Android(安卓)操作蓝牙Ble时数据转换的常