ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
来看MediaScanner(简称MS)的源码,这里将提取出和JNI有关的部分,其代码如下所示: **MediaScanner.java** ~~~ public class MediaScanner { static{ static语句 /* ①加载对应的JNI库,media_jni是JNI库的名字。实际加载动态库的时候会拓展成libmedia_jni.so,在Windows平台上将拓 展为media_jni.dll。 */ System.loadLibrary("media_jni"); native_init();//调用native_init函数 } ....... //非native函数 publicvoid scanDirectories(String[] directories, String volumeName){ ...... } //②声明一个native函数。native为Java的关键字,表示它将由JNI层完成。 privatestatic native final void native_init(); ...... privatenative void processFile(String path, String mimeType,MediaScannerClient client); ...... } ~~~ 上面代码中列出了两个比较重要的要点:1. 加载JNI库,2. Java的native函数