2017-08-10 32 views
3

我使用了android-ndk-r13b,我直接從Android網站下載它(不是從SDK管理器),並在Android Studio中設置Project Structure的路徑。APP_ABI忽略

它能夠檢測我的Android.mk和Application.mk(都在我的jni文件夾中),我從控制檯日誌中看到它。 在我Application.mk,我定義這個: APP_ABI:= armeabi-V7A

但是從控制檯日誌,我看得出來,每次它執行NDK建造,總有APP_ABI:= MIPS64作爲參數。所以,總會有一個錯誤。 (我猜這是因爲這個錯誤的參數,我得到錯誤「連接器命令失敗...」,因爲我編譯.a和.so爲armeabi-v7a不是mips64)

所以,我想知道是什麼讓我與APP_ABI定義的Application.mk被忽略? (I已經鏈接C++到我的gradle反正)

我嘗試使用:參數 「APP_ABI:= armeabi-V7A」 在ndkBuild {} 但它表示,有作爲參數沒有方法,例如()

我錯過了什麼嗎?

回答

7

找到了!添加這裏面defaultConfig {}在app.gradle => ndk{abiFilters 'armeabi-v7a'}

+1

對! Gradle插件覆蓋了我們通常在Application.mk –

+0

@AlexCohn中設置的一些參數。事實上,它正在讓我失望......許多人在將Android.mk中的APP_ABI設置爲Application.mk時遇到錯誤,並在它們移動後立即解決它。但是,只有在我做到這一點之前,這件事纔會消失。 – Lyn