同步思想:
先介绍客户端为最新数据的数据同步问题,这种机制常常应用在云笔记,随手记类似的app。
这里我建了一个listview,对listview上item的增删改,来代替实际项目中的情况。
1.对listview 和本地数据表datatable表(使用id作为数据唯一表示)映射,实现增删改。
2.每次将对本地数据表的操作记录在operation表中,在表中记录该操作的时间戳。
3.将operation 表中内容封装成json数据发送给服务器(从服务器获取上次同步时间戳,只提交在这次更新以后的操作)。
4.服务器更新完成,返回success,表示同步成功,在时候可以清空operation表
MainActivity.java
package com.example.sqllitcache;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.ContentValues;
import android.content.DialogInterface;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends Activity {
ListView lv;
Button submit;
EditText et;
SQLiteDatabase dbwrite ;
Dbhelper dbhelper;
ArrayAdapter adapter;
ImageButton upload;
Cursor c;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lv=(ListView) findVi