2

我读了很多关于这个问题的书,但我仍然无法做到这一点。

我有两个项目:一个做一些事情,我想做的是将它设置为 jar 文件并在主项目中使用它,调用它并获取我不知道如何实例化该包的一个类的信息来启动随着过程。辅助项目单独运行良好,我想获取信息并在主项目中使用它。如果我将辅助设置为库并将其添加到主库,它可以正常工作,但我不想以这种方式进行。

我认为可以做到,但我不知道如何从 jar 文件中实例化一个类,我开始绝望了。


这是我在 jared 中调用活动时的 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)

这就是我有意调用 Activity 的方式

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

这是清单

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

如果您需要更多信息,请告诉我再次感谢

4

3 回答 3

1

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

无法打包资源、清单条目。纯 Java 代码(可能使用 Android API)可以打包到 jar 中。

要使用它,只需将 jar 复制到项目下的 libs 文件夹即可。

右键单击项目。转到属性。Java 构建路径。单击添加罐子。从您的 libs 文件夹中添加 jar。

之后,您可以使用 import 语句并在您的新项目类中实例化它。

于 2013-03-21T17:29:48.593 回答
0

我不完全确定我是否正确理解了您的问题。您有两个使用相同类的 Android 应用程序?是对的吗?在这种情况下,您需要将公共类提取到库项目中。我不认为你可以从另一个引用一个 Android 应用程序项目。

于 2013-03-21T17:27:50.443 回答
0

最后,我找到了一种将项目用作库的方法。这个tuto是西班牙语字节很容易按照每个步骤中的图像 http://es.slideshare.net/ajdgeniz/como-hacer-un-archivo-jar-en-eclipse

于 2013-04-30T14:26:36.693 回答