Articles of android file

Android:使用Storage Access Framework获取的URI中的意向选择器打开文件

在开始时,用户可以使用新的存储访问框架选择文件(假设应用程序是API> 19): https://developer.android.com/guide/topics/providers/document-provider.html 然后通过保存URI来保存对所选文件的引用,如下所示: content://com.android.providers.downloads.documments/document/745 (在这种情况下,文件来自默认下载dir`)。 稍后,我想让用户打开这些文件(例如,他们的名字显示在UI列表中,用户选择一个)。 我想用Android着名的意图选择器function做到这一点,我所拥有的只是上面的URI对象…… 谢谢,

有关在SQLite数据库中使用Android备份服务的问题

我的应用程序将所有用户数据和首选项存储在SQLite数据库中,如果用户获得新手机,重新安装或恢复出厂设置,我希望将其保留。 我已经在Android的数据备份指南和他们的Android备份服务中做了一些阅读,但在我开始之前仍然有一些问题。 是在安装期间还是在我的应用程序首次启动时恢复数据? 即,在调用主Activity的代码之前文件是否存在? 如果我的SQLiteOpenHelper类已经处理升级,那么我还需要做些什么来处理旧数据库的恢复吗? 我假设没有,如果在我的应用程序启动之前存在数据库。 备份时是否会遇到并发问题,因为BackupManager需要时间? 如果用户输入新数据并且我调用dataChanged()然后在BackupManager调用onBackup()之前再次发生相同的情况,那么这些数据更改将如何处理? BackupManager是否只备份最新版本的数据库(应包括两个更改)? 尝试备份/恢复SQLite数据库会遇到什么问题? 我见过开发人员说一个设备上的数据库可能与另一个设备上的数据库不兼容。 我想简单地使用FileBackupHelper备份数据库,因为它看起来很简单 。 至少有一位开发人员似乎通过禁用Write Ahead Logging解决了至少一些兼容性问题 。 如果采用这种方法,我可以期待什么样的失败率? 如果非常高,我可能会考虑转换为CSV文件并在此过程中返回。 如果还原失败,我可以捕获它,通知用户,并将麻烦的数据副本保存到存储中吗? 用于故障排除和通知用户。 备份操作“不是线程安全的”。 澄清如何处理。 Android说, 要确保备份代理不会在活动的同时读取或写入文件,每次执行读取或写入时都必须使用synchronized语句。 这是否意味着我必须在synchronized语句中对数据库进行每次读/写操作? 即,我必须将这个添加到我的活动从db加载或写入信息的每个地方? 那是很多地方。 或者它是否只表示备份代码必须使用synchronized ? 谢谢您的帮助。 我只是想做到这一点,让我的用户在今年圣诞节获得新手机时感到高兴!

Android文件提供程序非法参数exception

我正在使用文件提供程序将照片保存到给定目的地。 我明白了: java.lang.IllegalArgumentException:尝试打开活动以从摄像头捕获图像时缺少android.support.FILE_PROVIDER_PATHS元数据。 我的manifest.xml文件: 我的paths.xml文件: <paths xmlns:android="http://img.androidcookie.com/android/ppre codeFile externalFilesDirectory = this.getExternalFilesDir(null); File imageFile = File.createTempFile( imageFileName, .jpg", externalFilesDirectory ); Uri photoURI = FileProvider.getUriForFile(this, "com.example", imageFile); 最后一行给出了例外。 我在这里想念的是什么? 我已经关注了官方Android开发网站的教程( https://developer.android.com/training/camera/photobasics.html )

java.io.filenotfoundexception在设备上打开失败的eacces(权限被拒绝)

以下代码包括从服务器下载文件并将其保存在存储中,当设备具有内部存储时可以正常工作。 但是当我使用没有内部存储的设备尝试它时,只有外部存储器,我得到以下exception。 java.io.filenotfoundexception打开失败的eacces(权限被拒绝) public void downloadFile(String dlUrl, String dlName) { int count; HttpURLConnection con = null; InputStream is = null; FileOutputStream fos = null; try { URL url = new URL( dlUrl ); con = (HttpURLConnection) url.openConnection(); con.setDoInput(true); con.connect(); is = url.openStream(); String dir = Environment.getExternalStorageDirectory() + Util.DL_DIRECTORY; File file = new File( dir ); […]

Android模拟器图像存储在哪里?

在模拟器上,我从Google下载了一张图片。 我可以在模拟器上find图像,但我不知道图像的文件位置是什么。 要调试我的应用程序,我需要知道该图像的位置。 如何获得图像的完整路径?

在Android中实现文件选择器并将所选文件复制到另一个位置

我正在尝试在我的Android项目中实现文件选择器。 到目前为止我能做的是: Intent chooseFile; Intent intent; chooseFile = new Intent(Intent.ACTION_GET_CONTENT); chooseFile.setType(“*/*”); intent = Intent.createChooser(chooseFile, “Choose a file”); startActivityForResult(intent, PICKFILE_RESULT_CODE); 然后在我的onActivityResult() switch(requestCode){ case PICKFILE_RESULT_CODE: if(resultCode==-1){ Uri uri = data.getData(); String filePath = uri.getPath(); Toast.makeText(getActivity(), filePath, Toast.LENGTH_LONG).show(); } break; } 这是打开文件选择器,但它不是我想要的。 例如,我想选择一个文件(.txt),然后获取该File然后使用它。 有了这段代码,我想我会得到完整的路径,但它不会发生; 例如,我得到: /document/5318/ 。 但是通过这条路径我无法获取文件。 我创建了一个名为PathToFile()的方法,它返回一个File : private File PathToFile(String path) { File tempFileToUpload; tempFileToUpload […]

Android – 如何从文档中获取选定的文件名

我正在启动使用以下代码选择documnets的意图。 private void showFileChooser() { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType(“*/*”); intent.addCategory(Intent.CATEGORY_OPENABLE); try { startActivityForResult( Intent.createChooser(intent, “Select a File to Upload”), 1); } catch (android.content.ActivityNotFoundException ex) { // Potentially direct the user to the Market with a Dialog Toast.makeText(this, “Please install a File Manager.”, Toast.LENGTH_SHORT).show(); } } 在onActivity结果当我试图获取文件路径时,它在文件名的位置给出了一些其他数字。 @Override protected void onActivityResult(int requestCode, int resultCode, […]

Android 5(HTC)EACCES(权限被拒绝)

应用程序无法在android 5(HTC HTC6525LVW os version: 5.0.1)外部存储上创建folder/file 。 父文件夹由[getExternalFilesDirs(String type)][1]方法返回。 Sdcard已安装。 有其他人有这个问题或建议如何解决? (不幸的是我没有这个设备来测试它) 编辑:从一个用户我知道,在此错误之前,她加密了SD卡,然后对其进行了格式化。

如何获取android中的内部和外部sdcard路径

大多数新的Android设备都有内部SD卡和外部SD卡。 我想制作一个文件浏览器应用程序,但我无法find如何获取在我的应用程序中使用的路径,因为 File file = Environment.getExternalStorageDirectory(); 只返回大多数设备/mnt/sdcard但是另外一个路径用于其他外部SD卡,如/storage1 or /storage2 。 任何帮助赞赏。

如何在files目录的子目录下创建具有世界可读权限的文件

我需要在我的应用程序中使用全局权限在myapp / files / subdir下创建文件。 我这样做是因为我使用外部应用程序来打开一些文件 FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_WORLD_READABLE); 仅在files文件夹下创建文件。 运用 File dir=new File(Constants.TASK_DIRECTORY); dir.mkdirs(); File file=new File(dir, FILENAME); file.createNewFile(); FileOutputStream fos=new FileOutputStream(file); 在子目录下创建文件但具有私有权限。 我需要find一种方法来组合这两者,以在子目录中创建一个世界可读的文件 我一直在尝试很多东西,但没有人帮助我,这是我未解决的最长时间问题