初試Windows下Android NDK開發環境配置

具體配置過程就不冗述了,網上一搜一大堆。主要是:java

1)下載Android NDK;windows

2)安裝Cygwin;eclipse

3)在Cygwin中配置Android NDK的環境變量。說白了,就是將windows系統下的NDK路徑映射到Cygwin環境下,以便後期編譯的時候能找到對應目錄;工具

4)在Eclipse中設置Android project的屬性,經過設置working環境與命令,調用Cygwin的編譯工具來生成動態鏈接庫。ui

安裝Cygwin是爲了與NDK工具一塊兒生成本地代碼的動態鏈接庫。具體的調用命令能夠在eclipse中的project屬性裏設置。code

我在配置完成以後翻了一個錯誤,雖然能正常build出so,可是在run的時候老是提示"java.lang.UsatisfiedLinkError",一直沒有找到問題緣由,後來忽然想到jni代碼是從NDK sample中copy過來,而調用Native code的Class是本身定義的,跟sample中的不同。會不會是Java Class的package name與class name不一致形成的呢?打開JNI代碼一看,發現Natave方法的命名頗有規則:Java_com_example_hellojni_HelloJni_stringFromJNI  com_example_hellojni應該就是調用Native code的Java package,HelloJni應該就是調用Native code的Java class。而本身的Java Class所在package與sample中一致,區別的只是Class name,故對本身的Class rename,ok,順利運行!ip

相關文章
相關標籤/搜索