-1

帮助!我正在将地理位置数据从 android 传输到数据库。给出错误信息。错误:(45, 46) 错误:找不到符号方法getWritableDatabase()。帮助! 在此处输入图像描述

public class AndroidGPSTrackingActivity extends Activity {

    Button btnShowLocation;

    // GPSTracker class
    GPSTracker gps;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        btnShowLocation.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // create class object
                gps = new GPSTracker(AndroidGPSTrackingActivity.this);

                // check if GPS enabled
                if(gps.canGetLocation()){

                    double latitude = gps.getLatitude();
                    double longitude = gps.getLongitude();
                    SQLiteDatabase dbm = this.getWritableDatabase();
                    ContentValues cv = new ContentValues();


                    cv.put("LAT_G",
                            gps.getLatitude());

                    cv.put("LANG",  gps.getLongitude());

                    boolean result = dbm.insert("table name", cv);


                    Toast.makeText(getApplicationContext(), "Your Location is - \nLat: " + latitude + "\nLong: " + longitude, Toast.LENGTH_LONG).show();
                }else{
                    // can't get location
                    // GPS or Network is not enabled
                    // Ask user to enable GPS/network in settings
                    gps.showSettingsAlert();
                } 
     }  }); }  }
4

1 回答 1

0

getWritableDatabase()是 中的一种方法SQLiteOpenHelperthis在您的代码中指的是View.OnClickListener匿名内部类实例,它不是一个SQLiteOpenHelper也没有这样的方法。

您需要实现自己的扩展类SQLiteOpenHelper,对其进行实例化,然后调用getWritableDatabase()实例以获取SQLiteDatabase要使用的类。

于 2017-08-24T14:11:23.867 回答