jeudi 21 mai 2015

Sqlite to mysql replication automatically

I can import the data to MySQL with data of sqlite data. it can automatically synchronise when MySQL database is not connected help me what can i do... here is my Sqlite Database and also implemented method:

public class DBAdapter {
final static String TABLE_NAME = "event_report";
final static String Report_Time = "timestamp";
final static String Latitude = "latitude";
final static String Longitude = "longitude";
final static String Event_Type = "event_type";
final static String Event_Value = "event_value";
final static String _ID = "_id";
final static String[] columns = { _ID, Report_Time, Latitude, Longitude, Event_Type, Event_Value };

final static String CREATE_CMD = "create table "+"event_report" + "( "
                + "_ID" + " INTEGER PRIMARY KEY,"
                + "Report_Time" + " TEXT NOT NULL," 
                + "Latitude" + " TEXT," 
                + "Longitude" + " TEXT,"
                + "Event_Type" + " TEXT DEFAULT NULL,"
                + "Event_Value" + " int(4) DEFAULT 0,"
                + "Androidid" + " TEXT )";

final static String DB_NAME = "Power_Analyser.db";
final private static Integer DB_VERSION = 1;
final private Context mContext;

public  SQLiteDatabase db;

private DBHelper dbHelper;
public  DBAdapter(Context _context) 
{
    mContext = _context;
    dbHelper = new DBHelper(mContext, DB_NAME, null, DB_VERSION);

}
public DBAdapter open() throws SQLException 
{
    db = dbHelper.getWritableDatabase();
    return this;
}
public void close() 
{
    db.close();
}

public  SQLiteDatabase getDatabaseInstance()
{
    return db;
}

public void insertEntry(String timestamp,String event_type,String Latitude,String Longitude,String eventval, String androidid)//,String Pass,String Repass,String Mobileno,String Secu)
{
    ContentValues newValues = new ContentValues();
    newValues.put("Report_Time", timestamp);
    newValues.put("Event_Type",event_type);
    newValues.put("Latitude", Latitude);
    newValues.put("Longitude", Longitude);
    newValues.put("Event_Value", eventval);
    newValues.put("Androidid",androidid);
    db.insert("event_report", null, newValues);
}}
powertoggle.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            boolean on = ((ToggleButton) powertoggle).isChecked();
            if (on) {
                eventval="Off";
                try {
                    display();} catch (JSONException e) {
                     //TODO Auto-generated catch block
                    e.printStackTrace();}
dbAdapter.insertEntry(timeenter,eventtype,latitude,longitude,eventval,androidid);getResults();
                fetch();} else {
                eventval="On";
                getResults();
                //Toast.makeText(getApplicationContext(), androidid, Toast.LENGTH_SHORT).show();            dbAdapter.insertEntry(timeenter,eventtype,latitude,longitude,eventval,androidid);}}
        private void display() throws JSONException {
            // TODO Auto-generated method stub
            JSONObject jsonobject = new JSONObject(resultSet_json);
            try {
                JSONArray jsonarray = jsonobject.getJSONArray(resultSet_json);
                for (int i=0;i<jsonarray.length();i++){
                    JSONObject jsonobject1 = jsonarray.getJSONObject(i);
                     id_json = jsonobject1.get("id").toString().toString();
                     androidid_json = jsonobject1.get("androidid").toString().toString();
                }
            } catch (JSONException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }}
        private void fetch() {
            // TODO Auto-generated method stub
            HttpClient httpclient = new DefaultHttpClient();
              HttpPost httppost = new HttpPost("http://ift.tt/1R5LQqH");
              try {
                  resultSet_json = resultSet.toString();
                // Add your data
                  List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
                  nameValuePairs.add(new BasicNameValuePair("id", id_json));
                  nameValuePairs.add(new BasicNameValuePair("androidid", androidid_json)); 
                  HttpResponse response = httpclient.execute(httppost);
              } catch (ClientProtocolException e) {
                  // TODO Auto-generated catch block
              } catch (IOException e) {
                  // TODO Auto-generated catch block
              }}});}
@Override
public void onLocationChanged(Location location) {
    // TODO Auto-generated method stub
    latitude = String.valueOf(location.getLatitude());
    longitude = String.valueOf(location.getLongitude());
    accuracy=String.valueOf(location.getAccuracy());
    bearing=String.valueOf(location.getBearing());
    altitude=String.valueOf(location.getAltitude());}    
public void insert(String eventval){
    ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
    nameValuePairs.add(new BasicNameValuePair("id",id));
    nameValuePairs.add(new BasicNameValuePair("androidid",androidid));
    nameValuePairs.add(new BasicNameValuePair("timeenter",timeenter));
    nameValuePairs.add(new BasicNameValuePair("eventtype",eventtype));
    nameValuePairs.add(new BasicNameValuePair("eventvalue",eventval));
    nameValuePairs.add(new BasicNameValuePair("latitude",latitude));
    nameValuePairs.add(new BasicNameValuePair("longtitude",longitude));
    nameValuePairs.add(new BasicNameValuePair("accuracy",accuracy));
    nameValuePairs.add(new BasicNameValuePair("bearing",bearing));
    nameValuePairs.add(new BasicNameValuePair("altitude",altitude));
    try{
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://ift.tt/1HvZaDb");
        httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
        HttpResponse response = httpclient.execute(httppost); 
        HttpEntity entity = response.getEntity();
        is = entity.getContent();
        Log.e("pass 1", "connection success ");}
    catch(Exception e){
        Log.e("Fail 1", e.toString()); 
        Toast.makeText(getApplicationContext(), "Invalid IP Address",
        Toast.LENGTH_LONG).show();}      
    try
    {
        BufferedReader reader = new BufferedReader
        (new InputStreamReader(is,"iso-8859-1"),8);
        StringBuilder sb = new StringBuilder();
        while ((line = reader.readLine()) != null)
    {
            sb.append(line + "\n");
        }
        is.close();
        result = sb.toString();
    Log.e("pass 2", "connection success ");
}
    catch(Exception e)
{
        Log.e("Fail 2", e.toString());
}}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub}
@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub}
@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub}
public void update(String eventval){}

Aucun commentaire:

Enregistrer un commentaire