Android 即使我清除数据并从6.0.1设备中删除应用程序,Sqlite数据库仍然存在

Android 即使我清除数据并从6.0.1设备中删除应用程序,Sqlite数据库仍然存在,android,database,sqlite,android-6.0-marshmallow,Android,Database,Sqlite,Android 6.0 Marshmallow,我的数据库实现是这样的 public class DbHelper extends SQLiteOpenHelper { private static DbHelper mDbHelper; private Context context; public static synchronized DbHelper getInstance(Context context) { if (mDbHelper == null) { che

我的数据库实现是这样的

public class DbHelper extends SQLiteOpenHelper {

    private static DbHelper mDbHelper;
    private Context context;

    public static synchronized DbHelper getInstance(Context context) {
        if (mDbHelper == null) {
            checkDataBase(context);
            mDbHelper = new DbHelper(context.getApplicationContext());
            Log.d(log, context.getDatabasePath(DB_NAME).getPath());
        }

        return mDbHelper;
    }

    public DbHelper(Context context) {
        super(context, DB_NAME, null, version);
        this.context = context;
    }
}
我从一个excel文件中输入了onCreate方法的一些初始数据。当我在清除数据并删除应用程序后从Android Studio安装应用程序时,我的行为就像有一个数据库,从不调用onCreate方法。它还带来了旧excel文件中的旧数据。清除数据时必须删除数据库

我将路径记录在Logcat中,它显示:/data/user/0/com.mypackage.app/databases/dbname

我认为在我的设备中的某个地方有一个缓存保存着数据库。它只出现在我的6.0.1设备上。它在5.1.1上运行良好


有没有删除数据库的建议?

我也有同样的问题,它困扰了我整整一天


卸载应用程序,然后重新启动手机。这解决了Marshmellow的问题。

我也有同样的问题,它困扰了我一整天


卸载应用程序,然后重新启动手机。这就解决了Marshmellow上的问题。

我在nexus 6P上也偶尔注意到了这一点,为了避免这个问题,我在卸载后重新启动了手机,然后手机就没有数据了。哎哟!我的问题也通过重新启动解决了。但我希望知道我的一些用户在更新到新版本时是否会遇到这个问题:当更新应用程序时,这是自动完成的,您只需增加db_版本,这将导致fire onUpgrade,您可以对当前数据库执行任何操作,添加/编辑/删除行、表…我已经这样做了,我在nexus 6P上也注意到了这一点,为了解决这个问题,我在卸载后重新启动了手机,然后它就不再有数据了!我的问题也通过重新启动解决了。但我希望知道我的一些用户在更新到新版本时是否会遇到这个问题:更新应用程序时,这是自动完成的,您只需增加db_版本,这将导致fire onUpgrade,您可以对当前数据库执行任何操作,添加/编辑/删除行、表……我已经完成了