将Android NDK库限制为特定应用程序

时间:2015-09-26 17:58:57

标签: android c++ android-ndk java-native-interface shared-libraries

有没有办法将Android NDK库限制为特定的JAVA应用程序?我想阻止程序员在另一个应用程序中使用我的lib。

修改

我正在构建一个共享库,将由用户(另一个程序员)在另一个应用程序中使用。

编辑2 该库还包括一个通过JNI与本机库交互的java库。

1 个答案:

答案 0 :(得分:1)

  

我想阻止程序员在其他应用程序中使用我的lib。

......大概是某种复制保护。

您没有说明“允许的”应用程序是由您还是其他人构建的。

如果是前者,将您的库静态链接到应用程序将使得在其他地方重用该库非常困难。

如果是后者,您可以使用一些技巧,例如查看/proc/self/exe以从库中查找应用程序名称,如果您看到的不是您允许的内容,则退出,但

  • 此类技术可能会给您的客户带来悲伤,
  • 会增加您的支持负载(当他们在合法条件下失火时),
  • 将被一个中等复杂的对手轻易绕过。

这就是一般这是浪费时间。