关于修改别人的代码过程中出现的关于反编译的问题:
调试的时候没有问题,但是打成 apk的时候就会出现以下的log 信息:
atcom.*.*.hall.a.h.a(Unknown Source)
atcom.*.*.a(Unknown Source)
由于各种反编译工具的泛滥,作为Android程序员在2.3版本以前只能通过手动添加proguard来实现代码混淆,
在2.3版本的sdk中我们可以看到在android-sdk-windows/tools/下面多了一个proguard文件夹
google已经把proguard技术放在了androidsdk里面 可以通过正常的编译方式也能实现代码混淆了
源文档 <;
如果反编译的话,会出现 类似于 .a类 文件
at *.*.*.shall.a.h.a
11-18 15:20:39.452:E/AndroidRuntime(5072): FATAL EXCEPTION: main
11-18 15:20:39.452:E/AndroidRuntime(5072): java.lang.NullPointerException: key == null
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.support.v4.(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): at
11-18 15:20:39.452:E/AndroidRuntime(5072): FATAL EXCEPTION: main
11-18 15:20:39.452:E/AndroidRuntime(5072): java.lang.NullPointerException: key == null
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.support.v4.(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): atcom.*.*.hall.a.h.a(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): atcom.*.*.a(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): atcom.*.*.*.View(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.AbsListView.obtainView(AbsListView.java:2207)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.Measure(GridView.java:1040)
11-18 15:20:39.452:E/AndroidRuntime(5072): atcom.cvte.multiscreen.hall.Measure(Unknown Source)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.asure(View.java:15609)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.asureChildWithMargins(ViewGroup.java:4916)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.asureChildBeforeLayout(LinearLayout.java:1411)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.asureVertical(LinearLayout.java:698)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.Measure(LinearLayout.java:588)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.asure(View.java:15609)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.ListView.setupChild(ListView.java:1923)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.ListView.makeAndAddView(ListView.java:1848)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.ListView.fillDown(ListView.java:678)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.ListView.fillFromTop(ListView.java:739)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.widget.ListView.layoutChildren(ListView.java:1661)
11-18 15:20:39.452:E/AndroidRuntime(5072): atandroid.Layout(AbsListView.java:2037)
会导致各种问题的发生空指针的 java.lang.NullPointerException: key == null 的问题;
类似的问题,解决此问题的相关网址:
仅供参考相互交流...........
解决办法:
自己重新 建立一个工程将有用的代码 复制进去,重新编译,打apk 就可以了!(主要是 proguard 的事儿)
本文发布于:2024-02-02 21:16:37,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170687979546490.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |