1. 程式人生 > >android從一個app點選啟動或者喚醒另一個app

android從一個app點選啟動或者喚醒另一個app

很多情況下我們需要從一個app點選啟動或者喚醒另一個app,例如,天貓會啟動支付,攜帶資料,跳到支付寶的相關頁面進行支付。
其中關鍵的程式碼如下:

    PackageManager packageManager = MainActivity.this.getPackageManager();  // 當前Activity獲得packageManager物件
    Intent intent=new Intent(); 
    try { 
        //下面字串就是你另外一個應用的包的路徑
        intent = packageManager.getLaunchIntentForPackage("cn.com.xxx.xxxxx"); 
    } catch (Exception e) { 
        Log.i(TAG, e.toString()); 
    } 
    startActivity(intent);

Intent其他用法
當android系統決定接收Intent物件的activity之後,該activity就會被啟動,然後執行在它的onCreat()方法中,那麼我們需要進行判斷

Intent intent = getIntent(); // 獲取android系統傳入intent物件
String action = intent.getAction();
String scheme = intent.getScheme();
if(scheme.equals("http")){
    // 執行開啟網頁的程式碼
    String string = "開啟網頁"+it.getData().
toString(); textView.setText(string); }else if(action.equals("android.intent.action.tel")){ String number = "電話" + it.getData().toString(); editText.setText(number); }else if(action.equals("android.intent.action.EDIT")){ // 執行編輯檔案的程式程式碼 }else if(action.equals("android.intent.action.VIEW"
)){ //執行看檔案程式 }

在此manifest.xml的activity裡寫intenT_filter標註相應的scheme=“http”等