0

アプリ内バイリングを使用してアプリを作成しましたが、コードを難読化してクラックの機会を減らしたいと考えています。しかし、プロガードのセットアップにはいくつかの問題があります。このチュートリアルでセットアップしようとしています。私のプロジェクト構造は一般的で、メイン プロジェクトには、すべての機能を備えた IN-app サービスを持つ他のプロジェクトへの参照があります。コードの難読化を使用して ant リリースを実行している最後のステップで停止しました。私はいつも受け取っています:

Buildfile: /home/viktor/Desktop/Dropbox/work/MyProject/build.xml

-set-mode-check:

-set-release-mode:

-release-obfuscation-check:
     [echo] proguard.config is /home/viktor/android-sdk-linux/tools/proguard/proguard-android.txt:proguard-project.txt
     [echo] Proguard.config is enabled

-check-env:
 [checkenv] Android SDK Tools Revision 21
 [checkenv] Installed at /home/viktor/android-sdk-linux

-setup:
     [echo] Project Name: MyProject
  [gettype] Project Type: Application

-build-setup:
     [echo] Resolving Build Target for MyProject...
[gettarget] Project Target:   Google APIs
[gettarget] Vendor:           Google Inc.
[gettarget] Platform Version: 4.1.2
[gettarget] API level:        16
     [echo] ----------
     [echo] Creating output directories if needed...
     [echo] ----------
     [echo] Resolving Dependencies for MyProject...
[dependency] Library dependencies:
[dependency] 
[dependency] ------------------
[dependency] Ordered libraries:
     [echo] ----------
     [echo] Building Libraries with 'release'...

nodeps:

-set-mode-check:

-set-release-mode:

-release-obfuscation-check:
     [echo] proguard.config is ${proguard.config}

-check-env:
 [checkenv] Android SDK Tools Revision 21
 [checkenv] Installed at /home/viktor/android-sdk-linux

-setup:
     [echo] Project Name: AndroidBillingLibrary
  [gettype] Project Type: Android Library

-build-setup:
     [echo] Resolving Build Target for AndroidBillingLibrary...
[gettarget] Project Target:   Android 4.0.3
[gettarget] API level:        15
     [echo] ----------
     [echo] Creating output directories if needed...
     [echo] ----------
     [echo] Resolving Dependencies for AndroidBillingLibrary...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency] 
[dependency] ------------------
[dependency] API<=15: Adding annotations.jar to the classpath.

-pre-build:

-code-gen:
[mergemanifest] No changes in the AndroidManifest files.
     [echo] Handling aidl files...
     [aidl] Found 1 AIDL files.
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
     [echo] ----------
     [echo] Handling Resources...
     [aapt] No changed resources. R.java and Manifest.java untouched.
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] No need to generate new BuildConfig.

-pre-compile:

-compile:
     [echo] Creating library output jar file...

-post-compile:

-obfuscate:

-dex:
     [echo] Library project: do not convert bytecode...

-crunch:
   [crunch] Crunching PNG Files in source dir: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/res
   [crunch] To destination dir: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/bin/res
   [crunch] Crunched 0 PNG files to update cache

-package-resources:
     [echo] Library project: do not package resources...

-package:
     [echo] Library project: do not package apk...

-post-package:

-release-prompt-for-password:

-release-nosign:
     [echo] 
[propertyfile] Updating property file: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/bin/build.prop
[propertyfile] Updating property file: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/bin/build.prop
[propertyfile] Updating property file: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/bin/build.prop
[propertyfile] Updating property file: /home/viktor/Desktop/Dropbox/work/AndroidBillingLibrary/bin/build.prop

-release-sign:

-post-build:

release:

-pre-build:

-code-gen:
[mergemanifest] No changes in the AndroidManifest files.
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
     [echo] ----------
     [echo] Handling Resources...
     [aapt] No changed resources. R.java and Manifest.java untouched.
     [echo] ----------
     [echo] Handling BuildConfig class...
[buildconfig] No need to generate new BuildConfig.

-pre-compile:

-compile:

-dex-obfuscate:

-dex-no-obfuscate:
BUILD FAILED
/home/viktor/Desktop/Dropbox/work/MyProject/add-proguard-release.xml:14: /home/viktor/Desktop/Dropbox/work/MyProject/${out.classes.dir} does not exist.

エラーは、何かが見つからないことを通知しますが、何をどのように修正しますか?

別のことですが、難読化せずに署名されていないプロジェクトをリリースする 2 番目のステップにいたとき、成功を受け取りましたが、「サブプロジェクトがあるようです。そうであれば、--subprojects コマンドを使用してください」という通知がありました。このパラメーターを追加しようとすると、かなり長い間、ニチフィケーションなしで完全に成功しますが、サブプロジェクトを更新できません。私はm not sure itとても悪いかどうか。この瞬間も修正するのを手伝ってください。

4

1 に答える 1

2

使用しているチュートリアルは古くなっています。ProGuardはAndroidSDKの一部になりました。Android SDKのドキュメントで説明されているように、project.propertiesの対応する行にコメントを付けることで有効にできます。

于 2012-11-25T23:05:40.200 に答える