Android json在后台解析而不影响活动性能

时间:2015-07-06 12:20:14

标签: android performance android-intent android-activity android-background

我必须解析Json数据并将其保存到Sqlite数据库中,我想在后台执行此操作,以免影响活动性能。

我的数据和用户界面没有相互关联。

解析并将数据保存到Sqlite进程后应自动停止。

2 个答案:

答案 0 :(得分:2)

试试这可能会有所帮助

private void createHandler() {
    Thread thread = new Thread() {
        public void run() {
            Looper.prepare();

            final Handler handler = new Handler();
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {
                   // Do parsing here
                    handler.removeCallbacks(this);
                    Looper.myLooper().quit();
               }
            }, 20);

            Looper.loop();
        }
    };
    thread.start();
}

答案 1 :(得分:2)

由于这里没有真正的问题,我会给出一个似乎适合你的问题的答案。

首先你需要使用Asyntasks,然后在处理完响应后,你应该做一些事情,比如获取数据库的实例并通过传递JSONObject来调用正确的Insertion方法。如果它是一个JSONArray,那么你应该循环调用该函数的数组(传递你在循环中的对象)。

您还可以拥有一个将JSON解析为自身的对象,然后您可以调用适合该对象的插入方法。