Android代码,用于在没有internet连接时将数据保存在sqlite中

Android代码,用于在没有internet连接时将数据保存在sqlite中,android,android-sqlite,offline,Android,Android Sqlite,Offline,嗨,我制作了一个小应用程序,在没有互联网连接的情况下,我需要在sqlite中存储数据。这是我的密码。它没有显示任何错误,但数据没有保存在sqlite中。问题是什么 submit.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub

嗨,我制作了一个小应用程序,在没有互联网连接的情况下,我需要在sqlite中存储数据。这是我的密码。它没有显示任何错误,但数据没有保存在sqlite中。问题是什么

submit.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub

                if(isOnline()==true)
                {
                    if(edittext1.getText().toString().length()==0)
                    {
                        Toast.makeText(getApplicationContext(), "Key NO(FX)", Toast.LENGTH_SHORT).show();
                    }
                    else if(edittext2.getText().toString().length()==0)
                    {
                        Toast.makeText(getApplicationContext(), "Old switch MAC ID(Volktek)", Toast.LENGTH_SHORT).show();
                    }
                    else if(switchtypedata.contains("New Switch Type"))
                    {
                        Toast.makeText(getApplicationContext(), "Select New Switch Type", Toast.LENGTH_SHORT).show();
                    }
                    else if(edittext3.getText().toString().length()==0)
                    {
                        Toast.makeText(getApplicationContext(), "Please Enter CTS Switch IP", Toast.LENGTH_SHORT).show();
                    }
                    else if(batteryreplaceddata.contains("Fx Battery Replaced"))    
                    {
                        Toast.makeText(getApplicationContext(), "Please select Fx Battery Replaced or Not", Toast.LENGTH_SHORT).show();
                    }
                    else if(batterytype.getVisibility()==View.VISIBLE)
                    {
                        if(batterytypedata.contains("Battery Type"))
                        {
                            Toast.makeText(getApplicationContext(), "Please Select Battery Type", Toast.LENGTH_SHORT).show();
                        }
                        else if(edittext4.getText().toString().length()==0)
                        {
                            Toast.makeText(getApplicationContext(), "Please Enter Replaced Battery serial No", Toast.LENGTH_SHORT).show();
                        }
                        else if(edittext5.getText().toString().length()==0)
                        {
                            Toast.makeText(getApplicationContext(), "Please Enter Recovered Battery Serial No", Toast.LENGTH_SHORT).show();
                        }
                        else 
                        {
                            ed1 = edittext1.getText().toString();
                            ed2 = edittext2.getText().toString();
                            ed3 = edittext3.getText().toString();
                            ed4 = edittext4.getText().toString();
                            ed5 = edittext5.getText().toString();
                            ed6 = edittext6.getText().toString();
                            ed7 = edittext7.getText().toString();

                            dialog = ProgressDialog.show(FXPage.this, "", 
                                    "Validating user...", true);
                             new Thread(new Runnable() {
                                    public void run() {
                                        login();                          
                                    }
                                  }).start();  
                        }
                    }
                    else
                    {
                        ed1 = edittext1.getText().toString();
                        ed2 = edittext2.getText().toString();
                        ed3 = edittext3.getText().toString();
                        ed4 = edittext4.getText().toString();
                        ed5 = edittext5.getText().toString();
                        ed6 = edittext6.getText().toString();
                        ed7 = edittext7.getText().toString();

                        dialog = ProgressDialog.show(FXPage.this, "", 
                                "Validating user...", true);
                         new Thread(new Runnable() {
                                public void run() {
                                    login();                          
                                }
                              }).start();  
                    }
                }
                else
                {
                    Toast.makeText(getApplicationContext(), "No Internet Connection", Toast.LENGTH_SHORT).show();
                    ed1 = edittext1.getText().toString();
                    ed2 = edittext2.getText().toString();
                    ed3 = edittext3.getText().toString();
                    ed4 = edittext4.getText().toString();
                    ed5 = edittext5.getText().toString();
                    ed6 = edittext6.getText().toString();
                    ed7 = edittext7.getText().toString();

                    System.out.println("benarjee"+ed1+ed2+ed3+ed4+ed5+ed6+ed7);

                    myDatabaseHelper =new MyDatabaseHelper(context);
                    sqLiteDatabase= myDatabaseHelper.getWritableDatabase();
                    MyDatabaseHelper.addinnformation(username,ed1,ed2,switchtypedata,ed3,batteryreplaceddata,batterytypedata,ed4,ed5,ed6,ed7,sqLiteDatabase);
                    Toast.makeText(getBaseContext(),"Data saved",Toast.LENGTH_LONG).show();
                    myDatabaseHelper.close();
                    System.out.println("print this");

                }


                }
        });

sqlite代码:

public class MyDatabaseHelper extends SQLiteOpenHelper {

     private static final String DATABASE_NAME="NUP.DB";
        private static final int DATABASE_VERSION=1;

        private static final String CREATE_QUERY="CREATE TABLE "+ FXInfo.FXDetails.TABLE_NAME+"("+
                FXInfo.FXDetails.USER_NAME+" TEXT, "+ FXInfo.FXDetails.FX_KEYNO+" TEXT, "
                + FXInfo.FXDetails.FX_OLDSWITCHMACID+" TEXT, "+ FXInfo.FXDetails.FX_NEWSWITCHTYPE+" TEXT, "
                + FXInfo.FXDetails.FX_CTSSWITCHIP+" TEXT, "+ FXInfo.FXDetails.FX_BATTREYREPLACED+" TEXT, "
                + FXInfo.FXDetails.FX_BATTREYTYPE+" TEXT, "+ FXInfo.FXDetails.FX_REPLACEDBATTERYSERIALNO+" TEXT, "
                + FXInfo.FXDetails.FX_RECOVERDBATTERYSERIALNO+" TEXT, "+ FXInfo.FXDetails.FX_GPSCOORDINATES+" TEXT, "
                + FXInfo.FXDetails.FX_FEEDBACK+" TEXT );";



    public MyDatabaseHelper(Context context) {
        // TODO Auto-generated constructor stub
         super(context,DATABASE_NAME,null,DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
         db.execSQL(CREATE_QUERY);
            Log.e("DATABASE OPERATION", "Table create..."+CREATE_QUERY);

            System.out.println("call this");
    }

     public static void addinnformation(String name,String fxkeyno,String fxoldswitchmacid,String fxnewswitchtype,
            String ctsswitchip, String fxbatteryreplaced,String fxbattertype,String fxbatteryreplacedsrialno,
            String fxbatteryrecoveredserialno,String fxgpscoordinates, String fxfeedback, SQLiteDatabase db){

         ContentValues contentValue = new ContentValues();
            contentValue.put(FXInfo.FXDetails.USER_NAME,name);
            contentValue.put(FXInfo.FXDetails.FX_KEYNO,fxkeyno);
            contentValue.put(FXInfo.FXDetails.FX_OLDSWITCHMACID,fxoldswitchmacid);
            contentValue.put(FXInfo.FXDetails.FX_NEWSWITCHTYPE,fxnewswitchtype);
            contentValue.put(FXInfo.FXDetails.FX_CTSSWITCHIP,ctsswitchip);
            contentValue.put(FXInfo.FXDetails.FX_BATTREYREPLACED,fxbatteryreplaced);
            contentValue.put(FXInfo.FXDetails.FX_BATTREYTYPE,fxbattertype);
            contentValue.put(FXInfo.FXDetails.FX_REPLACEDBATTERYSERIALNO,fxbatteryreplacedsrialno);
            contentValue.put(FXInfo.FXDetails.FX_RECOVERDBATTERYSERIALNO,fxbatteryrecoveredserialno);
            contentValue.put(FXInfo.FXDetails.FX_GPSCOORDINATES,fxgpscoordinates);
            contentValue.put(FXInfo.FXDetails.FX_FEEDBACK,fxfeedback);
            db.insert(FXInfo.FXDetails.TABLE_NAME,null,contentValue);
            Log.e("DATABASE OPERATION", "One row is insert");
        }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub

    }

}
-----------------------------------------------------------------------------DOA等级:

public static abstract class FXDetails
    {
     public static final String USER_NAME="user_name";
     public static final String TABLE_NAME="fxinfor";
        public static final String FX_KEYNO="fxkeyno";
        public static final String FX_OLDSWITCHMACID="fxoldswitchmacid";
        public static final String FX_NEWSWITCHTYPE="fxnewswitchmacid";
        public static final String FX_CTSSWITCHIP = "fxctsswitchip";
        public static final String FX_BATTREYREPLACED = "fxbatteryreplaced";
        public static final String FX_BATTREYTYPE = "fxbatterytype";
        public static final String FX_REPLACEDBATTERYSERIALNO = "fxreplacedbatteryserialno";
        public static final String FX_RECOVERDBATTERYSERIALNO = "fxbatteryrecoveredserialno";
        public static final String FX_GPSCOORDINATES = "fxcoordinates";
        public static final String FX_FEEDBACK = "fxfeedback";
    }

我能知道你是如何检查互联网连接的吗?因为这是一件大事。。。为什么不能创建一个管理器来处理要执行的请求和要保存在数据库中的请求!!在这里,您可以找到一个关于在android中使用SQLite数据库的优秀教程。