參考以下鏈接的答案。從其他應用程序選項卡式活動調用安裝應用程序活動?
Android : Call activity of another application
我想它作爲firstTabSpec.setIndicator("Second Tab Name").setContent(new Intent("com.company.package.FOO"));
,但我發現一個
java.lang.SecurityException異常:請求代碼com.company.package(UID爲10036),以在進程中運行com.example.test(使用uid 10037)
其中com.example.test是包c阿靈已安裝的軟件包 「com.company.package.FOO」
com.company.package清單
<activity
android:name="com.company.package.Login"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize|stateVisible" >
<intent-filter>
<action android:name="com.company.package.FOO" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
com.example.test清單
<activity
android:name="com.example.test.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
請讓我知道你是否需要更多細節。
謝謝:)
您不能將其他應用程序的活動嵌入到您自己的應用程序中。 – Luksprog 2013-03-27 07:23:15
他們已經在我發佈的ref鏈接中完成了它。我試着用按鈕單擊工作,但無法在TabActivity中實現它。 – kAnNaN 2013-03-27 07:32:53
這不是一回事。你可以使用一個'Intent'來從另一個應用程序啓動一個新的'Activity',但在你的情況下,使用帶有'Intent'的'setContent()'實際上是通過'Intent'指向的活動構建該選項卡的內容。所以基本上,啓動的Activity將被嵌入在TabActivity中(你不應該首先使用它,因爲它已被棄用),這在Android中是不允許的(導致SecurityException)。 – Luksprog 2013-03-27 07:36:40