我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android中如何使用aFileChooser第三方文件选择器

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android中如何使用aFileChooser第三方文件选择器

Android中如何使用aFileChooser第三方文件选择器,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

(1) 首先要配置Androidmanifest.xml文件: 

 <activity      android:name="com.ipaulpro.afilechooser.FileChooserActivity"      android:enabled="@bool/use_activity"      android:exported="true"      android:icon="@drawable/ic_launcher"      android:label="@string/choose_file" >      <intent-filter>        <action android:name="android.intent.action.GET_CONTENT" />        <category android:name="android.intent.category.DEFAULT" />        <category android:name="android.intent.category.OPENABLE" />        <data android:mimeType="*/*" />      </intent-filter>    </activity>

 最好把读写文件的权限一并加上: 

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

(2) 在Java代码中直接调用:

首先要触发文件选择,startActivityForResult调用aFileChooser已经提供好的选择器:

 Intent getContentIntent = FileUtils.createGetContentIntent();  Intent intent = Intent.createChooser(getContentIntent, "用aFileChooser选择文件");  startActivityForResult(intent, REQUEST_CHOOSER);

然后在onActivityResult里面等待结果返回:

@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case REQUEST_CHOOSER:  if (resultCode == RESULT_OK) {  final Uri uri = data.getData();    //此处返回的Uri包含的路径信息形如:content://com.android.providers.media.documents/document/image%3A16460  Log.d("Uri", uri.toString());    String path = FileUtils.getPath(this, uri);  // Alternatively, use FileUtils.getFile(Context, Uri)  if (path != null && FileUtils.isLocal(path)) {   File file = new File(path);   Toast.makeText(this, file.getAbsolutePath()+"", Toast.LENGTH_SHORT).show();  }  }  break; } }

完整的代码: 

package zhangphil.demo;import java.io.File;import com.ipaulpro.afilechooser.utils.FileUtils;import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Toast;public class MainActivity extends Activity { private static final int REQUEST_CHOOSER = 0x1234; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.chooseButton).setOnClickListener(new View.OnClickListener() {  @Override  public void onClick(View v) {  Intent getContentIntent = FileUtils.createGetContentIntent();  Intent intent = Intent.createChooser(getContentIntent, "用aFileChooser选择文件");  startActivityForResult(intent, REQUEST_CHOOSER);  } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case REQUEST_CHOOSER:  if (resultCode == RESULT_OK) {  final Uri uri = data.getData();    //此处返回的Uri包含的路径信息形如:content://com.android.providers.media.documents/document/image%3A16460  Log.d("Uri", uri.toString());    String path = FileUtils.getPath(this, uri);  // Alternatively, use FileUtils.getFile(Context, Uri)  if (path != null && FileUtils.isLocal(path)) {   File file = new File(path);   Toast.makeText(this, file.getAbsolutePath()+"", Toast.LENGTH_SHORT).show();  }  }  break; } }}

看完上述内容,你们掌握Android中如何使用aFileChooser第三方文件选择器的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android中如何使用aFileChooser第三方文件选择器

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android中如何使用aFileChooser第三方文件选择器

Android中如何使用aFileChooser第三方文件选择器,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。(1) 首先要配置Androidmanifest.xml文件:
2023-05-31

如何在Android中使用ExFilePicker文件选择器

如何在Android中使用ExFilePicker文件选择器?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。首先需要在build.gradle添加引用:compi
2023-05-30

Android中如何使用ImageEditContainer图片选择器

Android中如何使用ImageEditContainer图片选择器,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1. 简介ImageEditButton 和 Image
2023-05-30

Win8如何不借助第三方软件使用批处理删除缓存文件

当系统缓存积累到一定的程度就会变成垃圾文件,同时也加重了系统的负担,拖慢了系统的运行速度,虽然可以通过清理软件来清除这些缓存文件,但是这里有一个更好的方法,不借助第三方软件就可以快速清理系统缓存。 Win8批处理删除缓存文件的方法: 1、在
2023-06-06

Android开发中如何使用Intent打开第三方应用及验证可用性

小编给大家分享一下Android开发中如何使用Intent打开第三方应用及验证可用性,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!具体如下:Android中提供了Intent机制来协助应用间的交互与通讯。可作为不同组件之间
2023-05-30

如何使用android中的文件管理器

这篇文章给大家介绍如何使用android中的文件管理器,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。主界面的布局文件如下:
2023-05-31

如何使用:first-line伪元素选择器改变第一行文字的样式

如何使用:first-line伪元素选择器改变第一行文字的样式,需要具体代码示例CSS中的伪元素选择器是一种强大的工具,可以通过选择特定的元素部分来改变其样式。其中,:first-line伪元素选择器可以用来选取元素的第一行,从而实现对第一
如何使用:first-line伪元素选择器改变第一行文字的样式
2023-11-20

使用C++进行机器学习:如何在C++中使用第三方机器学习库

在 c++++ 中使用机器学习库的优势包括:代码重用专业性可扩展性集成库的步骤:选择库安装库导入库实例化库执行机器学习任务获取结果使用 C++ 进行机器学习:如何在 C++ 中使用第三方机器学习库在 C++ 中使用机器学习是编写高性能和资
使用C++进行机器学习:如何在C++中使用第三方机器学习库
2024-05-11

如何在Angular中使用第三方组件和懒加载技术优化性能

本篇文章给大家分享的是有关如何在Angular中使用第三方组件和懒加载技术优化性能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。环境准备1.全局安装Angular CLI:np
2023-06-15

如何使用:first-line伪元素选择器改变段落中每行的第一行文字的CSS样式

如何使用:first-line伪元素选择器改变段落中每行的第一行文字的CSS样式,需要具体代码示例CSS伪元素是CSS中常用的一种选择器,用于指定一个元素的特定部分或状态。其中,:first-line伪元素选择器用于选择元素中第一行的文字,
如何使用:first-line伪元素选择器改变段落中每行的第一行文字的CSS样式
2023-11-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录