如何在其他应用程序(如whatspp,shareit)等所有设备的Android / data文件夹中显示我的应用程序包名称文件夹

时间:2017-09-07 04:44:53

标签: android sqlite

我正在创建一个应用程序,我想在其中显示我的应用程序的包名称文件夹,其中我的数据库存储在真实设备的Android / data文件夹中。我使用了读写权限但它不是在真正的设备上工作,但当我在模拟器中运行此应用程序时,我将能够使用DDMS查看我的数据库。任何人都可以帮我如何在

中显示我的数据库名称
  

的Android /数据/ com.app.testing /数据库

在menifest文件中,我使用了这个

 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

在我的databasehelper classe

 private static final int DATABASE_VERSION = 1;

// Database Name
private static final String DATABASE_NAME = "contactsManager";

// Contacts table name
private static final String TABLE_CONTACTS = "contacts";

// Contacts Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_NAME = "name";
private static final String KEY_PH_NO = "phone_number";

public DatabaseHandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
//        Log.e("TAG", "DatabaseHandler: "+context.getDatabasePath(DATABASE_NAME).getPath());
    File dbFile = context.getDatabasePath(DATABASE_NAME);
    Log.e("TAG", "DatabaseHandler: "+dbFile.getAbsolutePath() );
}

如果您对此有所了解,请提前感谢您帮助我..........

我想创建我的应用程序的包名,如下图所示 enter image description here

3 个答案:

答案 0 :(得分:1)

创建一个应用程序包名称目录,如下所示:

    String extStorageDirectory = Environment.getExternalStorageDirectory().toString()+ "/Android/data/com.app.testing/database";
    File dir = new File(extStorageDirectory);
    if(!dir.exists())
        dir.mkdirs();

    File sqliteFile = new File(dir, fileName); // your sqlite file name like "myDb.sqlite"

    try{
        sqliteFile.createNewFile();
    }catch (IOException e){
        e.printStackTrace();
    }

答案 1 :(得分:0)

尝试使用此函数getPackageName();

答案 2 :(得分:0)

试试这个

    File dir = new File("Android/data/your location");  // define your folder location 
try{
  if(dir.mkdir()) {
     System.out.println("Directory created");
  } else {
     System.out.println("Directory is not created");
  }
}catch(Exception e){
  e.printStackTrace();
}