Articles of 迷惑

在proguard混淆后Android应用程序崩溃

我在我的应用程序上运行proguard工具来混淆。 我知道,当混淆发生时,proguard会缩小并优化应用程序,因为它认为合适。 所以混淆后,应用程序打开正确,然后当我尝试login它崩溃。 我可以得到的最好的是这个日志,因为我有设备连接。 10-03 11:12:47.384: E/AndroidRuntime(15058): FATAL EXCEPTION: AsyncTask #1 10-03 11:12:47.384: E/AndroidRuntime(15058): java.lang.RuntimeException: An error occured while executing doInBackground() 10-03 11:12:47.384: E/AndroidRuntime(15058): at android.os.AsyncTask$3.done(AsyncTask.java:299) 10-03 11:12:47.384: E/AndroidRuntime(15058): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352) 10-03 11:12:47.384: E/AndroidRuntime(15058): at java.util.concurrent.FutureTask.setException(FutureTask.java:219) 10-03 11:12:47.384: E/AndroidRuntime(15058): at java.util.concurrent.FutureTask.run(FutureTask.java:239) 10-03 11:12:47.384: E/AndroidRuntime(15058): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 10-03 11:12:47.384: E/AndroidRuntime(15058): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080) 10-03 11:12:47.384: E/AndroidRuntime(15058): at […]

如何在android 2.3中使用proguard

Android 2.3中的一个function是在发布版本时集成了proguard混淆function。 但是如何在创build我的apk时启用这个模糊处理? 谢谢!

如何告诉ProGuard混淆方法和类名?

我正在使用ProGuard来混淆我的apk,但在类和方法名称上没有任何更改 – 它们与以前相同。 只有variables名称被改变。 他们大多不会像Activity一样扩展类; 在我的代码中有一些inheritance,但它是我自己写的100%。 我正在使用d2j-dex2jar和jd-gui来检查结果。 由于GSON的使用,一些类被排除在外,这里是我的proguard-project.txt: -keep class com.google.ads.** # Don't proguard AdMob classes -dontwarn com.google.ads.** # Temporary workaround for v6.2.1. It gives a warning that you can ignore # Add any classes the interact with gson -keep class com.revicostudio.gravityrun.playerdata.PlayerData -keep class com.revicostudio.gravityrun.playerdata.SettingsDescriptor -keep class com.revicostudio.gravityrun.playerdata.ShipStatus -keep class com.revicostudio.gravityrun.descriptors.ShipDescriptor -keep class com.revicostudio.gravityrun.descriptors.Ships -keep […]

如何创build一个混淆的jar文件?

我怎样才能创build一个混淆的jar文件? 到目前为止,我可以轻松地将我的Android lib项目导出到jar并使用它。 如何混淆jar文件? 我的最终目标是让别人在他们的项目中使用我的lib.jar。 我只是想尽可能地保护代码… 🙂

在ProGuard混淆之后,排气似乎不起作用

我有一个使用Google Volley作为我的下载代理的Android应用程序。 我只是试图使用ProGuard来混淆代码,并发现在运行时凌乱下载开始失败。 这是我的ProGuardconfiguration: -keep class android.support.v4.app.** { *; } -keep interface android.support.v4.app.** { *; } -keep class com.actionbarsherlock.** { *; } -keep interface com.actionbarsherlock.** { *; } -keep class com.android.volley.** { *; } -keep interface com.android.volley.** { *; } -keepattributes *Annotation* -dontwarn org.apache.** 这里是我在代码中看到的错误: Async download FAILED. Exception message: The chosen LogFactory implementation does […]

ProGuard的Android代码混淆…如何知道它被混淆了?

我有一个Android项目,最近我通过ProGuard模糊处理后发布到市场上。 该项目出口没有任何并发​​症,但我怎么知道它被混淆了? 我能做些什么来validation混淆是否成功?

混淆的代码

我被要求为Android创build一个简单的应用程序。 事实上,第一个我会付钱,所以我真的不想把它搞砸了:)。 其中一个要求是代码必须被混淆。 我学会了混淆的一般概念,但我不想犯任何愚蠢的错误。 我需要做什么才能使代码混淆? 将它作为发行版导出还是需要其他步骤? 任何言论也赞赏。 PS。 如果有问题,我正在使用Eclipse。 编辑 从文章中提出的文章: 要启用ProGuard以使其作为Ant或Eclipse版本的一部分运行,请在/project.properties文件中设置proguard.config属性。 path可以是相对于项目根目录的绝对path或path。 如果将proguard.cfg文件保留在其默认位置(项目的根目录)中,则可以像这样指定其位置: proguard.config = proguard.cfg 我的项目目录中确实有project.properties文件。 但是我没有proguard.cfg文件。 相反,我有proguard-project.txt文件。 我想这是一个替代品。 project.properties: 这个文件是由Android工具自动生成的。 不要修改这个文件 – 你的改变将被删除! 该文件必须在版本控制系统中进行检查。 要自定义Ant构build系统使用的属性,请编辑“ant.properties”,并覆盖值以使脚本适应您的项目结构。 要使ProGuard缩小和混淆代码,请取消注释(可用属性:sdk.dir,user.home): proguard.config = $ {sdk.dir} \工具\ proguard的\ proguard的-android.txt:proguard的-project.txt 项目目标。 目标=机器人-7- 原来除了最后一行以外的所有内容都被注释掉了。 在proguard-project.txt中,所有内容都被注释掉了。 我想我在这里迷路了,所以我会非常感激如果有人能够一步一步地告诉我我应该做什么,以及如何检查它是否真正起作用。

Android库项目混淆

嗨,我开发了一个Android库,现在我想混淆它的重新分配。 我用eclipse和android版本4.1.2开发我的库。 我试着用日食和亲卫来混淆。 我做出口,并且还把project-properties proguard.config = proguard-project.text ,但它不生成任何jar文件。 它显示了我不允许图书馆项目的结果。 所以我不知道如何混淆android库项目。 我需要关于如何混淆android库项目的帮助。 需要帮助谢谢。

如何从Proguard(Android项目)的混淆中排除外部.jar?

当我使用proguard.cfg导出android项目时,所有被引用的.jar文件也被模糊处理。 我怎样才能从混淆中排除一些.jars?

如何为JavaScript界面​​configurationproguard?

我已经实现了一个使用JavascriptInterface的Webview。 没有模糊的时候它工作的很好,但是Proguard一旦启动,它就不起作用了。 我在这里看过其他答案,但我仍然无法得到它的工作。 一些WebView类: public class Activity_Webview { private WebView webView; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); webView = (WebView) findViewById(R.id.webview); webView.getSettings().setJavaScriptEnabled(true); webView.addJavascriptInterface(new JavaScriptInterface (), "HTMLOUT"); webView.setWebViewClient(mWebViewClient); } public class JavaScriptInterface implements NonObfuscateable{ @JavascriptInterface public void processHTML(String html) { handleFinishFromWebView(html); } } 我在Proguard中试过的东西 : -keep public class * implements com.project.NonObfuscateable -keepclassmembers class * implements NonObfuscateable […]