我正在使用 Netbeans 和 java 开发我的 Android 应用程序。当我使用模拟器时,我可以访问文件资源管理器并通过访问以下路径将 SQLite 数据库插入到设备内存中,data/data/com.example.helloandroid/database
但当我使用真实设备时,我无法访问此位置以将 SQLite 文件推送到手机的内部存储(位置)。
有人可以帮助我如何将文件添加到手机内部存储中。谢谢
我认为该设备没有root权限,这就是为什么你无法访问它。如果您想以编程方式在您的应用程序中执行操作,那么这是可能的。如果有人知道更好的话请分享。
EDIT:好的,首先,
1. copy your Database.db file in your projects assets folder.
2. now using code copy database file from /asset to device's internal storage
(data/data/<package name>/database folder).
对于复制文件使用下面的代码,
try {
// Open your local db as the input stream
InputStream myInput = myContext.getAssets().open("your database file name");
// Path to the just created empty db
String outFileName = "/data/data/<your_app_package_name>/databases/<database_file_name>";
OutputStream myOutput = new FileOutputStream(outFileName);
// transfer bytes from the inputfile to the outputfile
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer)) > 0)
{
myOutput.write(buffer, 0, length);
}
// Close the streams
myOutput.flush();
myOutput.close();
myInput.close();
}
catch (Exception e)
{
Log.e("error", e.toString());
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)