2014-02-19 93 views
0

我想創建我的android庫項目的jar文件。我的項目包含佈局,字符串和Drawbles等資源。我創建了jar文件和它的工作,但是當我試圖從我的jar文件打開自定義對話框時,它會給出錯誤。如何使用資源從android庫項目創建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) 

我不想在我的代碼項目中放置可能的庫資源。

回答

2

一種方法是

生成項目,然後罐子從斌複製(這個項目應該是一個庫項目)

+0

這將工作,如果我只有代碼不是資源,但這個ans也幫助我。所以謝謝。 – nishitpatel

1

Jar文件不能包含佈局,可繪製和字符串等資源。您必須將庫作爲庫項目鏈接到非庫項目。

首先確保您的library project is marked as library,然後使用從here的步驟導入庫。要做到這一點

+0

好的,謝謝你提供的信息,但一些圖書館的使用資源像text2pay庫等其他問題也不是問題,他們將如何使用資源? – nishitpatel

+0

我不知道這個庫,但我可以確保你的Android罐子不能包含資源。這就是爲什麼一些android支持庫必須作爲庫項目導入,而不是罐子。 –

+0

你是正確的jar不能包括資源文件我只是將我的所有資源複製到客戶端代碼和它的工作謝謝你... – nishitpatel

相關問題