Articles of android sdcard

如何在Android中的video文件路径中创建video缩略图?

我想从SD卡路径创建video的缩略图。 我怎样才能做到这一点?

所有Android设备都有内置SD卡吗?

在我的应用程序的第一次运行,我正在下载一个非常大的文件到/ sdcard / 我已经知道如果用户手机的内部SD卡已满或未安装(例如,如果手机作为大容量存储设备连接到PC,或者未正确断开与PC的连接),则可能会失败。 但是有没有没有内部SD卡的Android设备 ? (我的应用肯定无法使用)

如何隐藏Android画廊中的图像

我当前项目的一部分是从URL下载图像然后保存到SDCard。 但问题是所有在sdcard中保存的图像都显示在android gallery页面中。 我想要的是“ 我不想在Android画廊中保存所有已保存的图像。 ”

获取连接到Android设备的所有存储设备的路径列表

我想获取连接到Android设备的所有存储设备的列表。 例如 – 内部存储(存储所有文件夹,如下载,DCIM等),SD卡和OTG设备。 我知道有很多StackOverflowpost讨论了这个主题,但没有一个可以满足我的目的,如上所述。 我可以通过调用Environment.getExternalStorageDirectory().getPath()来获取内部存储,它返回内部存储的路径。 任何有关这方面的帮助都会非常感激,因为没有标准的AFAIK可以检索所有连接的存储设备的列表。 此外,许多解决方案不适用于不同的设备和Android版本。

Android – 将图像保存在特定文件夹中

我需要将使用我的应用程序拍摄的照片保存在特定文件夹中。 我已经阅读了很多这个问题的解决方案,但是我无法让它们工作,所以我请求帮助。 MainActivity.java public void onClick(View v) { Intent camera = new Intent( android.provider.MediaStore.ACTION_IMAGE_CAPTURE); //Folder is already created String dirName = Environment.getExternalStorageDirectory().getPath() + “/MyAppFolder/MyApp” + n + “.png”; Uri uriSavedImage = Uri.fromFile(new File(dirName)); camera.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage); startActivityForResult(camera, 1); n++; } AndroidManifest.xml中

如何检查外部存储空间的可用性?

如何检查SD卡是否已满,以便您的应用程序可以决定是否可以继续执行其工作,即写入外部存储器或通知用户存储空间不足。

使用SAF(存储访问框架)的Android SD卡写权限

关于如何在SD卡(android 5及以上版本)中编写(和重命名)文件的大量调查结果后,我认为android提供的新SAF需要获得用户写入SD卡文件的许可。 我在这个文件管理器应用程序ES文件资源管理器中看到,最初它采用读取和写入权限,如图所示。 选择SD卡后,授予写入权限。 因此,我尝试使用SAF的方式相同,但重命名文件失败。 我的代码: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); rename = (Button) findViewById(R.id.rename); startActivityForResult(new Intent(Intent.ACTION_OPEN_DOCUMENT_TREE), 42); } @Override public void onActivityResult(int requestCode,int resultCode,Intent resultData) { if (resultCode != RESULT_OK) return; Uri treeUri = resultData.getData(); DocumentFile pickedDir = DocumentFile.fromTreeUri(this, treeUri); grantUriPermission(getPackageName(), treeUri, Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); getContentResolver().takePersistableUriPermission(treeUri, Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION); } public […]

Android:从SD卡显示图像

这让我疯了! 这是我的代码(我知道这个文件存在): File imageFile = new File(“/sdcard/gallery_photo_4.jpg”); ImageView jpgView = (ImageView)findViewById(R.id.imageView); BitmapDrawable d = new BitmapDrawable(getResources(), imageFile.getAbsolutePath()); jpgView.setImageDrawable(d); 错误发生在最后一行(第28行,如下所示)。 错误输出: W/dalvikvm( 865): threadid=1: thread exiting with uncaught exception (group=0x4001d800) E/AndroidRuntime( 865): FATAL EXCEPTION: main E/AndroidRuntime( 865): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.example.camera/org.example.camera.Imgview}: java.lang.NullPointerException E/AndroidRuntime( 865): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663) E/AndroidRuntime( 865): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) E/AndroidRuntime( 865): at android.app.ActivityThread.access$2300(ActivityThread.java:125) […]

SD卡上的Android KitKat 4.4文件夹

我们刚刚违反了适用于在Android 4.4上将文件写入SD卡(外部存储)的新权限(EACCES权限被拒绝) 在KitKat之前,我们将可写文件夹设置为: mfolder = Environment.getExternalStorageDirectory().getPath() + “/appfiles”; 然而,经过几个小时的搜索,我得出结论,无论是对还是错,在4.4设备上启用文件写入需要将其更改为: mfolder = Environment.getExternalStorageDirectory().getPath() + “/Android/data/com.xyz.abc/appfiles”; 所以mfolder会是这样的:/mnt/sdcard/Android/data/com.xyz.abc/appfiles 这是正确的,我们是否在SD卡上创建了如上所示的文件夹以启用4.4设备来写文件? mfolder是我们保存为共享首选项的String。 然后,如果API> = 19,我们将运行此代码,该代码将更改mfolder String,然后将旧文件夹中的所有文件复制到新的’kitkat’文件夹。 if (android.os.Build.VERSION.SDK_INT>=19){ if (!mfolder.contains(“/Android/data/com.xyz.abc/appfiles”)){ if (prefs.getBoolean(“kitkatcheck”, false)==false){ //update mfolder from // /mnt/sdcard/appfiles // to // /mnt/sdcard/Android/data/com.xyz.abc/appfiles String prekitkatfolder = mfolder; String kitkatfolder = mfolder.replace(“/appfiles”, “/Android/data/com.xyz.abc/appfiles”); mfolder = kitkatfolder; try { File sd = new […]

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

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