2015-11-16 20 views
1

我最近開發了我的第二個應用程序。點擊一個特定的按鈕,我想打開我的第一個應用程序。我該怎麼做呢?意圖鏈接到另一個應用程序

我知道我必須使用Uri.parse,但我該如何使用它?

+0

Theres 2種方式做到這一點,他們被稱爲顯式和隱式意圖,閱讀和選擇適合您的需求。 http://developer.android.com/intl/es/reference/android/content/Intent.html – Nanoc

+0

http://stackoverflow.com/a/7596063/1764803 – IgorB

+1

是的,我知道我需要使用明確的意圖。但我到底該怎麼做呢? –

回答

1

您必須創建that.As的意圖,你知道軟件包名稱,你可以如下創建一個意圖,並調用startActivity

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("package.name"); 
startActivity(launchIntent); 
1

試試這個:

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address"); 
startActivity(launchIntent); 
0

SO試試這個問題Open another application from your own (intent)發現,如果你想OPE下面的回答不夠

public static boolean openApp(Context context, String packageName) { 
     PackageManager manager = context.getPackageManager(); 
     try { 
      Intent i = manager.getLaunchIntentForPackage(packageName); 
      if (i == null) { 
       return false; 
       //throw new PackageManager.NameNotFoundException(); 
      } 
      i.addCategory(Intent.CATEGORY_LAUNCHER); 
      context.startActivity(i); 
      return true; 
     } catch (PackageManager.NameNotFoundException e) { 
      return false; 
     } 
    } 
0

好在另一個應用程序中,您應該知道啓動應用程序的軟件包名稱。 請嘗試下面的代碼。

try { 
    Intent intent = context.getPackageManager().getLaunchIntentForPackage("pakage name of application which you want to launch"); 
    if (intent ! = null) { 
    intent.addCategory(Intent.CATEGORY_LAUNCHER); 
    context.startActivity(intent); 
    } 
} catch (PackageManager.NameNotFoundException e) { 

} 
相關問題