2012-01-10 88 views
2

有什么办法可以实现功能,它将清除我的应用程序中的所有数据/文件/ shared_preferences /数据库。我需要Android应用设置中的“清除数据”按钮等功能。Android重置应用程序的功能

任何想法如何实现这一目标?

+0

要清楚,U想从SD卡或共享偏好清除文件。 – 2012-01-10 12:33:39

+0

我想获得清晰的数据功能。不清除SD卡中的文件。我想重置我的应用程序。清除所有文件/共享首选项/数据库全部来自内部存储 – 2012-01-10 12:35:05

回答

2

此链接可能会有所帮助你
http://www.hrupin.com/2011/11/how-to-clear-user-data-in-your-android-application-programmatically

public class MyApplication extends Application { 
private static MyApplication instance; 

@Override 
public void onCreate() { 
    super.onCreate(); 
    instance = this; 
} 

public static MyApplication getInstance() { 
    return instance; 
} 

public void clearApplicationData() { 
    File cache = getCacheDir(); 
    File appDir = new File(cache.getParent()); 
    if (appDir.exists()) { 
     String[] children = appDir.list(); 
     for (String s : children) { 
      if (!s.equals("lib")) { 
       deleteDir(new File(appDir, s)); 
       Log.i("TAG", "**************** File /data/data/APP_PACKAGE/" + s + " DELETED *******************"); 
      } 
     } 
    } 
} 

public static boolean deleteDir(File dir) { 
    if (dir != null && dir.isDirectory()) { 
     String[] children = dir.list(); 
     for (int i = 0; i < children.length; i++) { 
      boolean success = deleteDir(new File(dir, children[i])); 
      if (!success) { 
       return false; 
      } 
     } 
    } 

    return dir.delete(); 
} 

}

+0

页面未加载 – 2012-01-10 12:56:45

1

试图做“DROP DATABASE database_name”?

相关问题