Android System.Load vs System.LoadLibrary

其实,网上已经有很多地方已经讨论过,System.Load 和 System.LoadLibrary 的差异了,比如这里:

http://stackoverflow.com/questions/7016391/difference-between-system-load-and-system-loadlibrary-in-java

官方文档里面也有详细的介绍:

Android System.Load vs System.LoadLibrary_第1张图片

简而言之就是,System.Load 要带上 so 的绝对路径;而 System.LoadLibrary 不应该带上路径,并且不应该带上 lib 前缀和 .so 后缀。比如,你有一个应用,其 package 为 com.test.demo,并且有一个 libtest.so。

那么,你可以这样去加载它:
1. System.Load(getApplicationInfo().nativeLibraryDir + "/libtest.so");

2. System.LoadLibrary("test");

PS: nativeLibraryDir added in API 9.

你可能感兴趣的:(Android System.Load vs System.LoadLibrary)