【问题标题】:Nullpointerexception due to proguard for java.io.StringReader由于 java.io.StringReader 的 proguard 导致 Nullpointerexception
【发布时间】:2014-07-17 14:33:07
【问题描述】:
07-17 19:00:53.681: E/AndroidRuntime(7912): FATAL EXCEPTION: main
07-17 19:00:53.681: E/AndroidRuntime(7912): java.lang.NullPointerException
07-17 19:00:53.681: E/AndroidRuntime(7912):     at java.io.StringReader.<init>(StringReader.java:47)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.text.HtmlToSpannedConverter.convert(Html.java:435)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.text.Html.fromHtml(Html.java:138)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.text.Html.fromHtml(Html.java:101)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at al.instantiateItem(HomeScreen.java:533)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.support.v4.view.PagerAdapter.instantiateItem(PagerAdapter.java:110)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.support.v4.view.ViewPager.addNewItem(ViewPager.java:832)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.support.v4.view.ViewPager.populate(ViewPager.java:982)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.support.v4.view.ViewPager.populate(ViewPager.java:914)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.support.v4.view.ViewPager.setAdapter(ViewPager.java:442)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at com.vserv.kasakusuk.HomeScreen.a(HomeScreen.java:444)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at ai.run(HomeScreen.java:401)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.os.Handler.handleCallback(Handler.java:615)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.os.Handler.dispatchMessage(Handler.java:92)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.os.Looper.loop(Looper.java:137)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at android.app.ActivityThread.main(ActivityThread.java:4921)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at java.lang.reflect.Method.invokeNative(Native Method)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at java.lang.reflect.Method.invoke(Method.java:511)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
07-17 19:00:53.681: E/AndroidRuntime(7912):     at dalvik.system.NativeStart.main(Native Method)

当我创建一个启用了 proguard 的构建并在设备上运行时,我遇到了这个异常。 任何人都可以帮助解决这个问题吗? proguard 配置文件中可能缺少什么?

【问题讨论】:

  • 请显示您的相关代码
  • 您的配置中缺少什么?你有吗?
  • txtvw.settext(Html.fromHtml(string_with_html_tags));在 HomeScreen.java:533 行

标签: java android eclipse proguard


【解决方案1】:

Html.fromHtml 的参数已变为空。据推测,您的程序正在从已处理代码中找不到的资源中读取它。例如,混淆类的包名可能已更改,而资源文件的包名可能保持不变。

您可以在 ProGuard 手册 > 疑难解答 > MissingResourceException or NullPointerException中找到一些建议

【讨论】:

  • 干得好@Eric!一个非常不完整的问题的非常可靠的答案。
  • @Eric:很好的答案。但我没有使用资源字符串作为参数。该文本是从在线提要中解析的。实际上我正在开发新闻应用程序。你能提供什么帮助?
  • 嗨@Eric 什么是解决方案?
猜你喜欢
  • 2017-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 1970-01-01
  • 2011-11-29
  • 1970-01-01
  • 2018-01-23
相关资源
最近更新 更多