天天看點

Android應用使用百度定位SDK 傳回error code : 162 latitude : 4.9E-324 lontitude : 4.9E-324

在使用百度定位SDK時遇到一個非常郁悶的問題

照着百度SDK使用文檔,分别将.jar檔案與.so檔案放入libs根目錄與libs\armeabi目錄下

[img]http://dl2.iteye.com/upload/attachment/0089/1216/5be15aa4-6668-332b-b137-0ca3b9c04b75.png[/img]

程式運作中得到的location對象值是error code : 162 latitude : 4.9E-324 lontitude : 4.9E-324。

花了很長時間檢查調用部分、權限配置部分均沒沒有錯誤。

在入口activity中加入了段測試程式,看.so檔案是否能加載

[img]http://dl2.iteye.com/upload/attachment/0089/1222/b9d0e408-2241-37be-9aa3-23287f16ce45.png[/img]

結果報了a.lang.UnsatisfiedLinkError: Couldn't load locSDK3: findLibrary returned null錯誤。确認是.so檔案未能加載

網上搜到有人說“請檢查你寫的應用是否使用了JNI,如果有使用,一般你的工程libs檔案夾下面會多出一個armeabi-v7a檔案夾,這時把你的.so檔案拷貝到這裡面一份。”我應用下沒有用到JNI是以libs下也幹幹淨淨沒有armeabi-v7a檔案夾。

随後我就自己建了個armeabi-v7a檔案夾将.so檔案拷貝進去,clean項目,在跑了一遍,成功!

寫出來供大家參考,希望大家不要重蹈覆轍。