Android Q 上基于 OkHttp 上传(大)文件的实现

Android Q 上基于 OkHttp 上传(大)文件的实现,第1张

如图,RequestBody 有好几个 create 方法,可以满足不同场景下的内容上传,比如字符串烂行、字节数组和文件

显然,字符串和字节数组是不能上传大文件的,均可能 OOM。

那么,就只能使用 RequestBody create(MediaType contentType, File file) 方法了。正常情况下也是没什么问题的,但是在 Android Q 上,态历猛由于存储权限的变更,将导致无法直接访问从内容库所选择的文件。

得到如下日志:

可见,即使通过 uri 得到了文件的真实路径,也是无法直接访问的。

通过上面的实验可以看到,我们是无法直接通过 File 相关的 API 访问原始帆桥文件的,但是我们却可以通过 ContentResolver 得到原始文件的流。

类似地,可以基于流或者 FileDescriptor 对图片解码成 Bitmap,参考:

1.如何将电脑上的大文件传到手机

1. 使用数据线传输。

2. 先压缩文件,然后登陆QQ或者微信,把文件发送到手机离去。

许多文件格式都有公开的、不同程度 规范或者 建议的 格式。这些规范或者 建议描述了数据如何 编码,如何排列。有时也规定了是否需要特定的电脑程序读取或处理。有两种情况下, 文件格式没有公开。第一种情况是:开发者将 文件格式视作商业秘密不愿公开;第二种情况是:开发者不愿或花去很少的时间用于 规范文档。

需要注意的是,使用不公开的 文件格式可能会带来额外的成本。要了解这类 文件格式或者需要通过对获得的文件进行 逆向工程,或者通过向开发者付费来获得文件的格式。第二种方式中往往还需要与开发者签订不扩散协议。不论怎样两种方式都是费时,费钱的。

2.怎么把电脑上的文件传到手机上

可以通过数据线连接电脑和手机,将文件传输到华为手机上。

以华为 MATE2 为例子,具体 *** 作如下:

1、打开手机“设置”。

2、下拉,点击“高级设置”。

3、找到“安全选项”,并打开。

4、在“PC助手”中打开“允许HiSuite通过HDB连接设备”选项。

5、使用数据线连接电脑和华为手机。

6、在电脑上打开想要传输的文件所在位置。

7、右键该文件,在d出的窗口中选择“发送到”。

8、在“发送到”,选择“华为Mate2”即可。

欢迎下载腾讯电脑管家了解更多知识,体验更多功能。

3.如何从电脑里把各种文件传输到手机上

给大家推荐个很猛的软件,可以直接把电脑上的东西发到手机上。“注:测试期哦,希望大家提出好的建议和BUG”

给大家看看网站上具体描述,我就不浪费手指了,如下:

广告词“它可能是你以后手机和电脑使用最频繁的软件”

介绍“微扑是一项用来专门解决察档明PC(包括互联网)与手蠢哗机之间文件传输的技术,有了微扑,用户可以随时随地把PC(包括互联网)的东西往手机里进行直接“倒腾”。免除了使用数据或蓝牙进行间接传送,免除了大量麻烦和尴尬。比如:

1)数据线丢失、USB插口不可用、数据线不匹配等等;

2)蓝牙传送前适配、距离超出范围、找不到对方蓝牙等;

3)PC上传邮件,手机提取数据的烦琐流程,同时也免除了包括读卡器等等其他传送中间介质的约束;

4)通过电脑发送短信或彩信,但短信或彩信因端口平台限制,消费高,并且表现力败告不够丰富。

通过使用微扑,可以实现任何PC(互联网)和手机之间的无障碍高效数据传输功能,可以随时随地的让手机、电脑进行直接“对话”,满足了无线与互联各终端间的数据传输和存储的需求。”

接下来看看我的具体应用:

例如:今天在上网的时候,看了老徐的一篇博客,我非常的喜欢这篇文章:

我很想把它保存在手机中,以便随时随地拿来阅读,那么我该怎么办呢?

您可以使用微扑!

首先,将您喜欢的部分复制下来,保存在WORD文档中(这不是重点)。

步骤如下:

(1)打开微扑PC客户端,登录并选择自己想要的方式,比如选B.

(2)填写您要接受的手机号码,以附件方式选择您要发送的文件,点击发布

(3)打开手机微扑客户端,你会收到一个如下图的提示:

(4)点OK 打开我的文档:在文件中找到发的主题

OK! 愿望实现了!

补充:同样的,文章也可以换成如:图片、手机 *** 、小说、文档等。总结四个字:就是方便

4.怎么把电脑上的文件传到手机上

将电脑中的文件传输到手机上,有两种方法,一种需要连接USB线,一种是无线传输。

一、连接数据线,手机和电脑用数据线连接,打开U盘模式知---我的电脑就会出现手机的移动硬盘---把电脑上要弄到手机的文道件粘贴复制到手机上的任意一个文件夹,可以自己新建。这样方法一般是传比较大的文件,如果是比较小的,可以用无线传输。

二、无线传输 1、同时登陆手机QQ和电脑QQ,登陆成功后在PC端会在好友列表新增“我的设备”显示“我的Android”。(如果无法实现同时登陆,通过手机QQ设置——安全和隐私下更改) 2、双击电脑客户端上的“我的Android”打开文件传输界回面 3、点击界面左下角的按钮“选择文件发送”,找到本答地文件,点击打开,等待文件传输完成 4、进入手机QQ,点击确认下载,即开始接受下载文件。

(如果文件较大可使用wifi下载) 接收完成,文件保存至手机,点击文件可以预览或查看。

5.如何将电脑上的文件传到手机上

三星手机连接电脑传输文件如照片、视频等,请 *** 作:

1.通过数据线将手机和电脑连接,连接成功后,电脑桌面会d出手机设备页面-点击"打开设备以查看文件"(或进入电脑/计算机-查找手机设备图标)。以手机中照片复制到电脑为例,打开手机设备-DCIM文件夹-将手机中照片复制黏贴到电脑中保存即可。

2.若没有d出手机设备页面,请下滑手机屏幕顶帘-点击"已连接为媒体设备"-勾选"媒体设备(MTP)"。

3.若电脑中依然没有手机设备图标,可能是电脑中缺少USB驱动软件,您可尝试在电脑上下载安装Kies/Kies3软件,近期上市的机型安装下载S 换机助手.

PC版下载地址://support/ *** artswitch/ 在页面中间下载Windows/MAC OS版。

注:PC版安装前请认真阅读页面下方对电脑系统要求。

4.然后重新按照步骤1 *** 作。

6.如何把电脑中的文件传到手机上

如何把电脑中的文件传到手机上?如果您使用的是OPPO手机,OPPO 手机连接电脑传输文件,请尝试以下 *** 作:

1、先在OPPO 手机上打开USB调试:进入【设置】——【关于手机】,找到【版本号】连续点击10次左右,即可开启开发者选项。如果还持续点击则会出现提示“您已处于开发者模式,无需进行此此 *** 作”。(回到手机【设置】——【其他设置】,点击进入,在页面底端就会出现【开发者选项】。进入【开发者选项】,即可关闭 。)2、然后使用原装数据线连接电脑和OPPO 手机。连接后电脑端会自动安装ColorOS USB驱动,建议您在这个安装完成后最好是重启下电脑。3、驱动安装完成后,你下拉手机的状态栏,如图选择USB传文件。(如果你传好文件等后,只想给手机充电的话,点击USB传文件可以切换到仅充电)4、选择好USB传文件后,在电脑端--我的电脑--就可以找到您手机型号,然后点击打开就可以管理您的手机,并传输文件等 *** 作了。5、接下来你就可以开始导入/导出文件到手机/电脑端了。

7.如何把电脑中文件导入到手机

将电脑中的文件传输到手机上,有两种方法,一种需要连接u *** 线,一种是无线传输。

一、连接数据线,手机和电脑用数据线连接,打开u盘模式---我的电脑就会出zd现手机的移动硬盘---把电脑上要弄到手机的文件粘贴复制到手机上的任意一个文件夹,可以自己新建。这样方法一般是传比较大的文件,如果是比较小的,可以用无线传输。

二、无线传输1、同时登陆手机qq和电脑qq,登陆成功后在pc端会在好友列表回新增“我的设备”显示“我的android”。(如果无法实现同时登陆,通过手机qq设置——安全和隐私下更改)2、双击电脑客户端上的“我的android”打开文件传输界面答3、点击界面左下角的按钮“选择文件发送”,找到本地文件,点击打开,等待文件传输完成4、进入手机qq,点击确认下载,即开始接受下载文件。

(如果文件较大可使用wifi下载)接收完成,文件保存至手机,点击文件可以预览或查看。

8.怎么在电脑和手机之间传输大文件

1.从电脑传送文件到手机

打开物理开关,并使用FN+F5开启蓝牙功能。然后右键单击“通知区域”的蓝牙图标。

选择“发送文件”,并点击“浏览”。

点击要选择的设备,然后“确定”。勾选“使用密钥”(因为有些手机如果不设密钥是无法连接的)。

点击下一步,再击“浏览”,选择要传送的文件。

点击下一步,手机端提示输入密钥,并开始传送。

这时候手机端需要输入密钥,如果长时间(约20秒左右)没有输入,会超时退出,这时候只要再点“上一步”重新 *** 作即可。

传送完成。

2.从手机传送文件到电脑 首先需要设置允许其它蓝牙设备查找到此计算机。 *** 作方法:双击“通知区域”蓝牙图标点击“选项”,勾选“允许Bluetooth设备查找到此计算机”(“允许Buluetooth设备连接到此计算机”默认勾选),如下图:

点击确定后,再右击“通知区域”的蓝牙图标,选择“接收文件”,等待手机通过蓝牙发送文件。

正在传送:

选择保存文件的位置:

成功接收从手机传送过来的文件:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12263626.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存