2013-03-05 59 views
3

從我的Android應用程序中,我想訪問另一個項目的一部分活動。爲此,我將該項目與我的應用程序鏈接起來,並在清單中聲明瞭該活動。但仍然沒有工作。 logcat的節目,從android中的另一個項目訪問活動

FATAL EXCEPTION: main 
java.lang.NoClassDefFoundError: com.example.apptwo 

艙單申報:

<activity android:name="com.example.apptwo.Activity2"></activity> 

開始活動

Intent i = new Intent(Activity1.this, com.example.apptwo.Activity2.class); 
startActivity(i); 

誰能幫助我.....?

+0

你是指什麼訪問?開始? – 2013-03-05 06:09:14

+0

您可能需要將其他項目添加爲庫。或者更好的辦法是,讓兩個項目嘗試訪問的庫中都有你想要訪問的組件。 – Muz 2013-03-05 06:10:17

+0

@dtmilano:是的,要開始該活動..... – akh 2013-03-05 06:10:42

回答

0

您不需要添加任何類項目的Manifest這不會存在於它。

訪問Activity或從任何其他項目等。當您在Intents左右使用它時,您只需要傳遞整個Class名稱,包括它的包名稱。

補充: - 它有效,但庫中的活動應該在清單文件中聲明。

+1

我試過了....但得到這個異常........... android .content.ActivityNotFoundException:無法找到顯式活動類{com.example.appone/com.example.apptwo};你有沒有在你的AndroidManifest.xml中聲明這個活動? – akh 2013-03-05 06:20:47

+2

它的工作....但在庫中的活動應該在清單文件中聲明..... – akh 2013-03-05 10:17:14

0

如果您已將該項目添加爲庫項目,則無需在Manifest內定義該項目。你只需要通過在Java類中導入它來訪問它。

import com.example.apptwo.Activity2; 
0

在您的java文件中使用您必須從其他項目訪問活動的代碼。

import com.example.apptwo.Activity2; 

然後通過導入,您可以訪問該活動的方法和變量。使用意圖從第一個活動移動到第二個活動。

-1

使用意圖和設置使用字符串組件名稱:

final Intent intent = new Intent(); 
intent.setClassName("com.example.apptwo", "com.example.apptwo.Activity2"); 
startActivity(intent); 

如果「com.example.apptwo」安裝和活性2是在其清單導出它會奏效。

+0

順便說一句,你不必包括任何東西或鏈接你的項目來做到這一點 – 2013-03-05 07:07:04

+1

所以這應該只適用於第二個應用程序已經安裝在設備中......對嗎? – akh 2013-03-05 07:18:00

相關問題