android - 检测到盗版 Android 应用程序中添加的库?
问题描述
从我的崩溃报告中可以看出,有些人盗版了我的应用程序并添加了广告以将其货币化。
崩溃报告中的堆栈跟踪似乎显示了对库的大量调用以显示插页式广告?
我可以添加代码来检测 com.test.ylh 或 com.qq.e 库的存在吗?
android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@da2c866 is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:1126)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:439)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:95)
at android.app.Dialog.show(Dialog.java:473)
at com.qq.e.comm.plugin.intersitial2.e.a(A:315)
at com.qq.e.comm.plugin.intersitial2.e.show(A:113)
at com.qq.e.comm.plugin.intersitial2.e.show(A:107)
at com.qq.e.comm.plugin.intersitial2.d.show(A:35)
at com.qq.e.ads.interstitial2.UnifiedInterstitialAD.show(Unknown Source:4)
at com.test.ylh.InterAd$2.run(InterAd.java:53)
at android.app.Activity.runOnUiThread(Activity.java:6972)
at com.test.ylh.InterAd.showAd(InterAd.java:50)
at com.test.ylh.InterAd.onADReceive(InterAd.java:108)
at com.qq.e.comm.plugin.intersitial2.a$1.run(A:169)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7860)
at java.lang.reflect.Method.invoke(Method.java:-2)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
解决方案
您可以使用此处所述的方法检查类是否存在:如何检查类是否存在于包中的某处?
但是,他们也可以在重新编译应用程序时删除该检查。所以不会密不透风。您可以通过添加适当的代码混淆来使“海盗”变得更加困难:https ://developer.android.com/studio/build/shrink-code#obfuscate
推荐阅读
- c++ - 在 Visual Studio 2017 中使用 libcurl 时出错
- linux - 保持 IPFS 守护进程存活的最佳方法
- android - INSTALL_REFERRER 接收器是否仍可在 Android Oreo 上使用?
- vue.js - 编辑 DataTable 中的值,并在输入上对活动排序表进行排序
- excel - 删除公式,但保留 Google Spreedsheet 中所有工作表的结果
- laravel - 在Axios,VUE JS + LEAFLET + Axios 中获取后标记变量未定义
- c++ - 调用 bazel 命令进行调试时 GDB 立即退出
- python - 构建 Python:如何禁用 Py_LIMITED_API?
- python - 如何只捕获正则表达式中的第一组?
- python - Spyder 启动问题