Android Studio导出库\SDK而不公开代码

Android Studio导出库\SDK而不公开代码,android,android-studio,gradle,sdk,android-proguard,Android,Android Studio,Gradle,Sdk,Android Proguard,我有一个Android Studio项目,在这个项目中,我构建了一个SDK并将其导出到Jcenter,这样客户就可以通过在build.gradle中添加一行“compile..”来在他们自己的项目中使用我的SDK 到目前为止,一切进展顺利,但我有一个问题,我的客户可以看到他们项目中的所有SDK代码。我正试图了解在不破坏任何东西的情况下隐藏我的实现的最佳方式是什么。显然,proguard可能会参与解决方案,但令我惊讶的是,我还没有看到任何“最佳实践”解决方案来实现我想要的 有什么想法吗 首先,Bi

我有一个Android Studio项目,在这个项目中,我构建了一个SDK并将其导出到Jcenter,这样客户就可以通过在build.gradle中添加一行“compile..”来在他们自己的项目中使用我的SDK

到目前为止,一切进展顺利,但我有一个问题,我的客户可以看到他们项目中的所有SDK代码。我正试图了解在不破坏任何东西的情况下隐藏我的实现的最佳方式是什么。显然,proguard可能会参与解决方案,但令我惊讶的是,我还没有看到任何“最佳实践”解决方案来实现我想要的


有什么想法吗

首先,Bintray提供的公共jCenter存储库上的库是开源软件

这就是我为保护我的代码所做的:

1.所有代码都用Proguard进行了模糊处理。对于非常特定的类有一些规则,因此库可以正常工作

2.我的组织已经订阅了Bintray上的专业计划,允许我们没有OSS库。看见为此,开发人员需要在依赖项之后添加bintray repo。如果您愿意,我想您可以像Fabric/Twitter一样使用maven拥有自己的代码库,并自己托管库

不要忘记,类文件总是可以反编译的,因此您无法真正防止这种情况发生。

作为个人说明,如果你打算用你的图书馆赚钱,不妨考虑一个OSS图书馆和一个prenium服务器端服务,比如Parse.com,那里是OSS