1. 程式人生 > >Android 開發常見錯誤集錦

Android 開發常見錯誤集錦

Android 開發問題集錦

1.   java.lang.UnsatisfiedLinkError:Couldn't load locSDK4b: findLibrary returned  null

         libs下新建一個armeabi-v7a,然後將liblocSDK3.so複製一份到該資料夾如果這個不行,那麼新建一個armeabi資料夾再放入liblocSDK3.so就可以了。

2. Unable to execute dex: Java heap space問題解決

標籤: Unabletoexecutedex:Javaheapspace

Unable to execute dex: Java heap space問題解決方案,最近做android的專案開發的時候,往手機安裝應用的時候,安裝一個應用,一安裝,就報這個錯誤,從網上找了幾個也沒解決,說是改eclipse.ini的記憶體,但是改了,都是eclipse都啟動不了,最後找了一個,終於解決了:
       匯入工程的jar通過add User Library方式匯入

       右鍵工程->build path->add Library->user Library->userLibraries->new->隨便取個名字->add JARs->ok

新增過程中新增user Libraries的時候,一定要記住  systemLibrary選中,一定記住,得選擇這個systemLibrary,如果不選的話,是不起作用的,剛開始我就是因為疏忽了這個細節一直沒解決。

在android2.3上設計的下載程式,在android 4.0上執行時報android.os.NetworkOnMainThreadException

異常,原來在4.0中,訪問網路不能在主程式中進行,有兩個方法可以解決,一個是在主程式中增加:

        // 詳見StrictMode文件

       StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()

                .detectDiskReads()

                .detectDiskWrites()

               .detectNetwork()   // or.detectAll() for all detectable problems

                .penaltyLog()

                .build());

        StrictMode.setVmPolicy(newStrictMode.VmPolicy.Builder()

               .detectLeakedSqlLiteObjects()

               .detectLeakedClosableObjects()

                .penaltyLog()

                .penaltyDeath()

                .build());

 另一種是啟動執行緒執行下載任務:

       public voidonCreate(Bundle savedInstanceState) { 

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        // 啟動執行緒執行下載任務

        new Thread(downloadRun).start();

    }

    /**

     * 下載執行緒

     */

    Runnable downloadRun = new Runnable(){

           @Override

           publicvoid run() {

                 //TODO Auto-generated method stub

                 updateListView();

           }

    };