前陣子公司專案需要用到 Google VR SDK for Android,但在加入了這個 SDK 之後,一打開 app 即出現 UnsatisfiedLinkedError
。主要的原因是,我們之前因為別的 SDK 只提供 32 bits 的 so file,為了避免在 64 bits 的機器上發生找不到 so 的狀況發生,我們只好把全部的 64 bits so 移除掉。但 Google VR SDK 內包含 arm64-v8a
的檔案:
因此我們需要在 gradle 內設定,讓他打包時不要跟著把不需要的檔案放進來,可以使用 packagingOptions
來辦到,作法如下:
android {
...
... packagingOptions{
exclude 'lib/arm64-v8a/libpano_video_renderer.so'
}
}
這樣就能讓系統去找到正確的資料夾了。
參考資料: