0

首先,我想说我是 Android 编程的初学者。
我需要我的应用程序进行自我更新,所以我试图将来自http://push-link.com/的 jar 文件添加到我的应用程序以使其自我更新。

我已经将 jar(这个)添加到类路径(复制的 jar 文件 -> 右键单击​​ -> 构建路径 -> 添加到构建路径...),我通过粘贴此代码将 Internet 权限添加到 AndroidManifest.xml :

<uses-permission android:name="android.permission.INTERNET" />

在这段代码之后:

android:versionName="1.0" >

并通过编写调用 PushLink.start 方法:

PushLink.start(this, R.drawable.ic_launcher, 10, "myApiKey", true);

在这段代码之后:

super.onCreate(savedInstanceState);
setContentView(R.layout.main);

现在我的应用程序在启动时崩溃:

03-05 20:20:27.509: I/ActivityThread(26890): 进入进程活动消息 = 110 03-05 20:21:09.149: I/ActivityThread(26927): 进入进程活动消息 = 110 03-05 20:21 :09.199: W/dalvikvm(26927): threadid=1: 线程以未捕获的异常退出 (group=0x2aacc8a0) 03-05 20:21:09.219: E/AndroidRuntime(26927): 致命异常: main
03-05 20:21 :09.219:E / AndroidRuntime(26927):java.lang.RuntimeException:无法实例化应用程序pl.defozo.gim1menager.PushLinkSetup:java.lang.ClassNotFoundException:加载程序dalvik.system.PathClassLoader中的pl.defozo.gim1menager.PushLinkSetup [/数据/app/pl.defozo.gim1menager-1.apk]
03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android.app.ActivityThread$PackageInfo.makeApplication(ActivityThread.java:663) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在android.app.ActivityThread.handleBindApplication(ActivityThread.java:4274) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android.app.ActivityThread.access$3000(ActivityThread.java:132)
03-05 20 :21:09.219: E/AndroidRuntime(26927): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:2109)
03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android.os.Handler.dispatchMessage(Handler.java:99) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android. os.Looper.loop(Looper.java:123) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android.app.ActivityThread.main(ActivityThread.java:4669) 03-05 20:21: 09.219: E/AndroidRuntime(26927): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 java.lang.reflect.Method.invoke( Method.java:521) 03-05 20:21:09.219: E/AndroidRuntime(26927): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:876) 03-05 20:21: 09.219: E/AndroidRuntime(26927): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 dalvik.system。NativeStart.main(Native Method) 03-05 20:21:09.219: E/AndroidRuntime(26927): Caused by: java.lang.ClassNotFoundException: pl.defozo.gim1menager.PushLinkSetup in loader dalvik.system.PathClassLoader[/data/应用程序/pl.defozo.gim1menager-1.apk]
03-05 20:21:09.219: E/AndroidRuntime(26927): 在 dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
03-05 20:21:09.219: E/AndroidRuntime(26927): 在 java. lang.ClassLoader.loadClass(ClassLoader.java:573) 03-05 20:21:09.219: E/AndroidRuntime(26927): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:532) 03-05 20:21: 09.219: E/AndroidRuntime(26927): 在 android.app.Instrumentation.newApplication(Instrumentation.java:942)
03-05 20:21:09.219: E/AndroidRuntime(26927): 在 android.app.ActivityThread$PackageInfo.makeApplication (ActivityThread.java:658) 03-05 20:21:09.219: E/AndroidRuntime(26927): ... 11 更多

如何正确实施?
是否有任何教程包含有关 push-link.com 的信息?
任何其他想法如何简单地使应用程序自我更新?

提前致谢,
德福佐

4

3 回答 3

0

在属性 → 构建路径 → 项目中你检查了你自己的项目吗?

是添加不同库的一般教程,但设置是相同的。

于 2012-03-06T14:06:27.793 回答
0

包名可能有问题

利用:

<manifest package="pl.defozo.gim1menager" ...
<application android:name=".PushLinkSetup" ...

或者

<application android:name="pl.defozo.gim1menager.PushLinkSetup" ...
于 2012-04-05T16:48:40.187 回答
0
 > java.lang.ClassNotFoundException: 
 >     pl.defozo.gim1menager.PushLinkSetup in loader dalvik.system.PathClassLoader[/data

错误消息告诉您找不到类 pl.defozo.gim1menager.PushLinkSetup。

如果此类来自您的 jar 文件,请确保在“订购和导出”下的“java 构建路径”中,您的 jar 有一个复选标记,告诉构建系统该 jar 应该成为您解决方案的一部分。

于 2012-03-06T14:11:39.553 回答