我正在尋找將一個INDIVIDUAL源文件鏈接到Android Studio項目。我正在使用支持NDK的全新Android Studio 1.3+。將各個本機源文件鏈接到Android Studio項目
在我模塊的build.gradle文件,我可以通過鏈接整個源文件夾:
android{
sourceSets {
main.jni.srcDirs += 'C:/users/jforce/native'
}
}
以上塊將添加在「天然」文件夾中的所有原始的源文件。
但是,我正在尋找添加單個源文件。例如。只需一個位於C:/users/jforce/native/test.c的文件,不需要在同一文件夾中添加任何相鄰文件。
這裏是我試過到目前爲止:
main.jni.sourceFiles.getFiles() += "C:/users/jforce/native/test.c"
的Android Studio不喜歡這一個。左側操作數帶有紅色下劃線,當鼠標懸停時,會顯示「分配給無效值」。這讓我感到困惑,因爲Android/Gradle文檔說這個方法返回一個帶有泛型參數文件的Set。 sourceSets.main.jni.srcDirs也返回一個具有泛型參數文件的Set,並且我可以合法地在該Set上使用+ =運算符,但不能在這裏。
https://docs.gradle.org/current/javadoc/org/gradle/api/file/FileCollection.html#getFiles()
好了,那麼我想這:
main.jni.sourceFiles.getFiles().add("C:/users/jforce/native/test.c")
這默默的失敗。我的項目生成沒有錯誤,但源文件沒有添加到我的項目。
作爲萬福瑪利亞,我又試圖這樣的:
main.jni.sourceFiles.join("C:/users/jforce/native/test.c")
的最後一次嘗試類似的,失敗默默的爲好。該文件未被添加。
有誰知道如何正確地將INDIVIDUAL原生源文件鏈接到Android Studio 1.3+項目?任何幫助將不勝感激。謝謝!
您也可以嘗試混合Android.mk +等級插件方法,如* [在ndk {} DSL中定義LOCAL_SRC_FILES](http://stackoverflow.com/a/32640823/192373)* –