我想为我的 android 库项目创建一个 Jar 文件。我的项目包含布局、字符串和绘图等资源。我创建了 Jar 文件及其工作原理,但是当我尝试从 jar 文件打开自定义对话框时,它会出现错误。
02-19 15:40:13.467: E/AndroidRuntime(27766): FATAL EXCEPTION: main
02-19 15:40:13.467: E/AndroidRuntime(27766): android.content.res.Resources$NotFoundException: Resource ID #0x0
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.content.res.Resources.getValue(Resources.java:1033)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.content.res.Resources.loadXmlResourceParser(Resources.java:2179)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.content.res.Resources.getLayout(Resources.java:872)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.view.LayoutInflater.inflate(LayoutInflater.java:394)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:274)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.app.Dialog.setContentView(Dialog.java:471)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.example.inappcarrierbilling.customDailog.DirectBillingDialog.onCreate(DirectBillingDialog.java:46)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.app.Dialog.dispatchOnCreate(Dialog.java:355)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.app.Dialog.show(Dialog.java:260)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.example.inappcarrierbilling.objects.BillingParams$2.onPostExecute(BillingParams.java:318)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.example.inappcarrierbilling.objects.BillingParams$2.onPostExecute(BillingParams.java:1)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.os.AsyncTask.finish(AsyncTask.java:631)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.os.AsyncTask.access$600(AsyncTask.java:177)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.os.Handler.dispatchMessage(Handler.java:99)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.os.Looper.loop(Looper.java:153)
02-19 15:40:13.467: E/AndroidRuntime(27766): at android.app.ActivityThread.main(ActivityThread.java:5297)
02-19 15:40:13.467: E/AndroidRuntime(27766): at java.lang.reflect.Method.invokeNative(Native Method)
02-19 15:40:13.467: E/AndroidRuntime(27766): at java.lang.reflect.Method.invoke(Method.java:511)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
02-19 15:40:13.467: E/AndroidRuntime(27766): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
02-19 15:40:13.467: E/AndroidRuntime(27766): at dalvik.system.NativeStart.main(Native Method)
我不想将可能的库资源放入我的代码项目中。
最佳答案
实现此目的的一种方法是
构建您的项目,然后从 bin 复制 jar(为此您的项目应该是一个库项目)
关于java - 如何从带有资源的android库项目创建Jar文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21878088/