2013-03-21 43 views
2

我讀了很多關於這個問題,但我仍然無法做到這一點。如何使用外部罐子

我有兩個項目:一個做一些東西,我想要做的是將其設置爲jar文件並在主項目中使用它,調用它並獲取信息我不知道如何實例化一個類該程序包以該進程開始。二級項目單獨運作良好,我想將這些信息用於主項目。如果我將輔助設置爲庫並將其添加到主工作正常,但我不想這樣做。

我認爲這是可能的,但我不知道如何從jar文件實例化一個類,我開始絕望。


這是logcat的時候我所說的活性在賈裏德

file 03-22 11:04:57.900: E/AndroidRuntime(11895): FATAL EXCEPTION: main 
03-22 11:04:57.900: E/AndroidRuntime(11895): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.suscribir/com.example.suscribir.Suscribir}; have you declared this activity in your AndroidManifest.xml? 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1405) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.app.Activity.startActivityForResult(Activity.java:2827) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.app.Activity.startActivity(Activity.java:2933) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at com.example.principal.Principal$1.onClick(Principal.java:37) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.view.View.performClick(View.java:2485) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.view.View$PerformClick.run(View.java:9080) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.os.Handler.handleCallback(Handler.java:587) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.os.Handler.dispatchMessage(Handler.java:92) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.os.Looper.loop(Looper.java:130) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at android.app.ActivityThread.main(ActivityThread.java:3687) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at java.lang.reflect.Method.invokeNative(Native Method) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at java.lang.reflect.Method.invoke(Method.java:507) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 
03-22 11:04:57.900: E/AndroidRuntime(11895): at dalvik.system.NativeStart.main(Native Method) 

這就是我所說的活性,其意圖

intent.setAction(Intent.ACTION_MAIN); 
       intent.setClassName("com.example.suscribir", "com.example.suscribir.Suscribir"); 
       startActivity(intent); 

這是清單

<activity 
    android:name="com.example.suscribir.Suscribir"> 
</activity> 

如果您需要更多的inf o,只是告訴我 再次感謝

回答

0

我不完全確定,如果我理解你的問題的權利。你有兩個使用相同類的Android應用程序?是對的嗎?在這種情況下,您需要將公共類提取到庫項目中。我不認爲你可以引用另一個Android應用程序項目。

+0

你明白了,從其他項目中,我知道如何將項目導出爲jar文件以及如何導入jar文件,但我不知道如何使用該類 – Ivan 2013-03-21 20:15:20

1

http://androiddevelopement.blogspot.in/2011/01/creating-jar-file-in-eclipse.html。 從eclipse創建jar

無法打包資源清單條目。純Java代碼(可能使用Android API)可以打包成jar。

要使用它,只需將jar複製到項目下的libs文件夾即可。

右鍵單擊項目。轉到屬性。 Java構建路徑。點擊添加罐子。從libs文件夾中添加jar。

之後,您可以使用導入語句並在您的新項目類中實例化它。

+0

@Ivan嘗試上述操作。 – Raghunandan 2013-03-21 17:41:42

+0

謝謝Raghunandan,我之前跟着那個tuto。我不能在庫中使用res文件夾?我如何使用Buttons,EditText,TextView ...? – Ivan 2013-03-21 20:43:35

+0

您必須在第二個項目中再次定義UI元素。 – Raghunandan 2013-03-22 06:31:37