使用像dex2jar和jdgui2這樣的工具很容易檢查APK的內容。Cordova android 5.1.1 APK混淆與proguard混淆
我們正在嘗試在我們的Cordova項目中使用Proguard來「保護」一些包含我們想保密的信息的類(主要解密我們試圖爲我們的客戶端保護的某些內容)。
我們不能說得對。該應用程序崩潰,或者它沒有被混淆。
我們加入到我們的build.gradle:
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
我們proguard.pro包含:
-keep class !com.smartmobilesoftware.** (*; }
smartmobilesoftware是inAppPurchases插件。
在那個軟件包中,我們修改了幾個類,這些類在沒有proguard的情況下效果很好。
我發現下面的「Proguard的支持失蹤」:https://issues.apache.org/jira/browse/CB-9269
這裏喬·庫巴稱以下內容:「好吧,你不應該使用ProGuard和科爾多瓦,或者至少,沒有很好的理由來使用它,因爲你不能將它與minifyEnabled一起使用,這實際上使得ProGuard能夠正常工作。由於Cordova使用反射遍佈整個地方,這是在沒有proguard-rules.pro文件的情況下炸燬Cordova的好方法。
我們試圖避免告訴ProGuard的這個問題,所有的類應該原封不動除了在com.smartmobilesoftware的那些(-keep類com.smartmobilesoftware **(*;!})
我不知道這是witih我們的代碼有問題(但代碼工作正常,無proguard的),該插件,或proguard的本身。
我們沒有看到任何有意義的錯誤。
我們發佈了科爾多瓦建造之前的應用程序2.2.0,它使用了ANT和proguard,以及另一個插件,它運行良好。所以我們想知道Cordove是否改變了ProGuard的。
任何人都可以闡明這個問題?
謝謝你的迴應。我還沒有檢查,但賞金到期了,所以我給你。 :-)如果您的建議有效,我會在這裏回覆。 –