gpt4 book ai didi

android - Proguard 与 AAR 库问题

转载 作者:太空宇宙 更新时间:2023-11-03 12:15:31 25 4
gpt4 key购买 nike

我有一个包含一个类的 android 库,我想将它变成一个 .aar 库。当我将 minifyEnabled 设置为 true 时,另一个 android 项目无法使用该库(如果 minifyEnabled 设置为 false 就可以了)。我想问一下proguard和AAR库的正确配置是什么

HelloWorld.java

package com.example.hello;

import android.util.Log;

public class HelloWorld {
public static void Hello(){
Log.v("HelloWorld","Hello World!");
}
}

build.grandle

apply plugin: 'com.android.library'

android {
compileSdkVersion 24
buildToolsVersion "24.0.0"

defaultConfig {
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.0.0'
}

proguard-rules.pro

-dontwarn android.support.v7.**
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }

-keep class com.example.hello {public *;}

最佳答案

尝试将 proguard-rules 中的最后一行更改为

-keep class com.example.hello.** {public *;}

至于Android Studio可以反编译,那是你防不胜防的。如果你想保护你的代码,我想你能做的最好的事情就是混淆大部分代码,然后通过添加相关混淆器规则不混淆的接口(interface)扩展所需的功能。

关于android - Proguard 与 AAR 库问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38075291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com