airdroid怎么访问sd卡授权文件访问

不知道你有么有发现来自菜鸟嘚成长史:,

KitKat之后的版本不再支持用户对外置SDcard(Secondary Storage)的写入等操作如果用户想要将文件等copy到手机中,则只能

存储到内部存储器中而无法存储箌外置sdcard中,而且无法创建新的文件夹这样一来给用户和开发者都带来了一定的不便。之所

和READ_EXTERNAL_STORAGE权限来直接操作Sdcard现在则不能,其目的是软件卸载时能将该软件创建的文件全部删除据Google

文重点是分析外部存储权限是如何作用的。

在KitKat之前的Android版本会给应用程序单独分出一块外部存儲空间(external storage)这块存储空间可能在sdcard

(可插拔的外置sdcaard)上,也可能在仅仅是在设备内部的闪存上我们要获得WRITE_EXTERNAL_STORAGE权限在能对这块

行管理。为了在文件创建时获取必要的权限动态地接受或拒绝来自用户/组的个别请求,会有一个参与与FUSE 内核

驱动的交互这仅仅是Android在FAT File System 格式化后的可移动卷仩使用Linux型权限的一部分,在内核中它也允许使用超出基本的



很多设备有sd卡授权文件访问但是都没有把它当作external storage,实际上这就是这些设备的“secondary volume”例如,三星的Galaxy系列就是属于这

一类从权限方面来说,sd卡授权文件访问其实像外部存储卷一样被管理但是作为设备的“secondary external storage",是没有API可鉯进行写的操作的。

系统内部的应用可以访问secondary storage的任何部分对于第三方应用几乎不可能(目前

特别的解决方法可以实现对某些机型外部存儲文件的操作)。(关于如何在4.4上操作文件可以参考自4.4开始,Google引入

SAF框架)如果Google以后不改变现在对4.4系统外置sd的操作权限,对于开发者洏言熟悉SAF框架也许是必要的。

在4.4系统内部应用中,你会发现有一个叫DocumentUI的apk这个就是用来处理SAF的一些接口的。)

在external storage下的目录文件拥有楿同的权限如下:

注意:在4.3中,sdcard_rw组有全部的读写权限在Kitkat中,sdcard_r 组有 +rwx 所有权限实际上这是明显不对的。并不等表示全部

响,这些方法返回的值被单独地记录在内核文件系统中所以他们都会返回true,即使试图以POSIX打开文件也会失败(在4.4的外置sd

卡上,是不能在文件夹写入一丅文件的但是当你试图调用canWrite()方法来判断该文件夹是否可写时,它仍会返回true值所以此法不可取)

态的检查,因此FUSE守护进程会被用来补充攵件系统的权限FUSE守护进程会强制赋予拥有特定目录的App每个权限(也就是访问自身数

从上面两句程序可以看到,FUSE守护进程强制控制GID 1023(media_rw系統应用才有)才能对secondar storage进行写操作。再引入

下面我们就梳理一下如果在拥有外置sd卡授权文件访问的kitkat设备上进行文件操作,对于开发者而言哪些能做、哪些不能做下图给出开发者会尝试

总结一下,自4.4开始Google对secondary volume做了限制之后不仅为用户带来了不便,也为设备制造商及开发者带來了诸多不便华为

更是为此给开发者们发了一份通告:。如今除了一些OEM厂商自行修改权限后的Rom对

第三方应用没有限制外,大牛们也为巳Root的设备用户提出修改platform.xml文件来修改权限(具体放法请百度之)以使第三方应用可以操作

外置sd卡授权文件访问;还有一些上面提到的文件管悝工具也可以操作外置sd卡授权文件访问不管Google做限制的初衷是什么,希望Google从用户的角度来考虑问题

对Android系统做出更好的该进。在此感谢一丅 文件管理工具的开发者 在G+对我问题的及时解答及帮助同时也感谢一下给

}

KitKat之后的版本不再支持用户对外置SDcard(Secondary Storage)嘚写入等操作如果用户想要将文件等copy到手机中,则只能

存储到内部存储器中而无法存储到外置sdcard中,而且无法创建新的文件夹这样一來给用户和开发者都带来了一定的不便。之所

和READ_EXTERNAL_STORAGE权限来直接操作Sdcard现在则不能,其目的是软件卸载时能将该软件创建的文件全部删除据Google

攵重点是分析外部存储权限是如何作用的。

在KitKat之前的Android版本会给应用程序单独分出一块外部存储空间(external storage)这块存储空间可能在sdcard

(可插拔的外置sdcaard)上,也可能在仅仅是在设备内部的闪存上我们要获得WRITE_EXTERNAL_STORAGE权限在能对这块

很多设备有sd卡授权文件访问,但是都没有把它当作external storage实际上这就昰这些设备的“secondary volume”。例如三星的Galaxy系列就是属于这

一类,从权限方面来说sd卡授权文件访问其实像外部存储卷一样被管理,但是作为设备嘚“secondary external storage",是没有API可以进行写的操作的

系统内部的应用可以访问secondary storage的任何部分,对于第三方应用几乎不可能(目前

特别的解决方法可以实现对某些机型外部存储文件的操作)(关于如何在4.4上操作文件可以参考Storage Options

),如果Google以后不改变现在对4.4系统外置sd的操作权限对于开发者而言,熟悉SAF框架也许是必要的

在4.4系统内部应用中,你会发现有一个叫DocumentUI的apk这个就是用来处理SAF的一些接口的。)

在external storage下的目录文件拥有相同的权限洳下:

注意:在4.3中,sdcard_rw组有全部的读写权限在Kitkat中,sdcard_r 组有 +rwx 所有权限实际上这是明显不对的。并不等表示全部

响,这些方法返回的值被单獨地记录在内核文件系统中所以他们都会返回true,即使试图以POSIX打开文件也会失败(在4.4的外置sd

卡上,是不能在文件夹写入一下文件的但昰当你试图调用canWrite()方法来判断该文件夹是否可写时,它仍会返回true值所以此法不可取)

态的检查,因此FUSE守护进程会被用来补充文件系统的权限FUSE守护进程会强制赋予拥有特定目录的App每个权限(也就是访问自身数

从上面两句程序可以看到,FUSE守护进程强制控制GID 1023(media_rw系统应用才有)財能对secondar storage进行写操作。再引入

下面我们就梳理一下如果在拥有外置sd卡授权文件访问的kitkat设备上进行文件操作,对于开发者而言哪些能做、哪些不能做下图给出开发者会尝试

总结一下,自4.4开始Google对secondary volume做了限制之后不仅为用户带来了不便,也为设备制造商及开发者带来了诸多不便华为

更是为此给开发者们发了一份通告:Android4.4上应用写外卡的兼容性问题与解决建议

。如今除了一些OEM厂商自行修改权限后的Rom对

第三方应用沒有限制外,大牛们也为已Root的设备用户提出修改platform.xml文件来修改权限(具体放法请百度之)以使第三方应用可以操作

外置sd卡授权文件访问;还囿一些上面提到的文件管理工具也可以操作外置sd卡授权文件访问不管Google做限制的初衷是什么,希望Google从用户的角度来考虑问题

对Android系统做出哽好的该进。在此感谢一下FX

 文件管理工具的开发者Tod Liebeck 在G+对我问题的及时解答及帮助同时也感谢一下给

}

Android的AirDroid取代你的USB电缆连接你的电脑 通过网络浏览器或者桌面客户端来回传送文件,发送文本消息播放音乐,查看照片和管理应用程序

to是免费的,它可以作为web服务器允許Android设备和计算机通过网络进行通信。

Android可以免费从安卓市场获得 你必须在你的安卓设备和你的电脑之间传输文件,你必须注册一个免费的帳户 这也允许你在因特网上使用AirDroid而不仅仅是在 Wi-Fi 上。 应用程序首次打开时你被要求登录或者注册。 如果没有使用浏览器注册你可以在這里屏幕上注册你的免费帐户。 注册你的免费帐户后在AirDroid应用程序中登录到你的帐户。

一旦登录会显示一个对话框,允许你实时查看电腦中的所有应用程序和系统通知 要立即启用该功能,请点击"启用" 你也可以在以后的设置中打开该功能。

如果你点击"启用""通知访问"屏幕显示。 点击"airdroid通知镜像服务"复选框 点击"稍后",你可以跳过下面两个步骤

显示确认对话框。 点击"行"

在"airdroid通知镜像服务"复选框中应该有一個复选标记表示服务正在运行。 按你设备上的"背面"按钮返回to应用程序

在AirDroid应用程序中,显示一个网址

打开浏览器并转到 URL。 主 up web接口显示并咑开一个对话框如果你注册了免费帐户,你可以登录 要使用设备连接到你的电脑,请点击设备上应用程序中的二维代码,如上所示 摄像机已经激活。在"扫描二维码"下的PC屏幕上的二维码上打开相机如下所示。 你的设备将自动读取二维码并连接到电脑

如果你通过同┅个网络连接,AirDroid应用程序将使用"本地连接模式"连接

注意:如果Android设备和PC没有连接到同一本地网络,但是两者都连接到 Internetin将连接远程连接模式。

浏览器中的airdroid屏幕主页

连接后你将看到airdroid页面的主页面,其中包含有关你的设备的链接和统计信息 在右下角,你将看到 Wi-Fi 连接强度细胞覆盖率和你的Android设备的电池级别。

你可以通过点击屏幕右上角的"详细信息"按钮来查看更多关于你的手机的细节

显示有关设备存储及其所包含文件的更多信息的对话框。 单击对话框右上角的"x"按钮以关闭它

要查看内部电话存储或者sd卡授权文件访问内容,请单击屏幕左侧的"文件"icon

如果你想清理文件系统,从这里删除文件比通过你的Android文件管理器快得多 使用右击菜单管理文件-"删除"将它们永久删除,而"下载"将它们丅载到你的计算机

如果使用列表格式处理文件更容易,请使用"文件"对话框顶部工具栏上的"列表视图"按钮

右键单击菜单上的"下载为 ZIP"选项將多个文件或者目录作为单个文件下载到你的计算机上。

使用"上载"按钮将文件添加到设备上而无需提升USB电缆。 单击对话框右上角的"x"按钮鉯关闭它 文件对话框中的相同内容。

将显示"上传文件"对话框 在这里对话框中将文件拖放到这里对话框上,将它的传送到你的设备 打開"上传文件"对话框时打开的任何目录中都保存了文件。 单击"上传文件"对话框右上角的"x"按钮以关闭它然后在"文件"对话框上关闭该按钮以关閉该对话框。

在你设备上的AirDroid应用程序中你可以访问已经传送的文件。 注意"文件传输"icon 上的通知标记 点击 icon。

传送文件的方法有多种包括 AirDroid Web ( 使用浏览器,就像我们一直在讨论的) 和AirDroid桌面( 稍后我们将在本文中展示) 在"文件传输"屏幕上的"我"列表中点击"airdroid网站"。 请注意"airdroid网站"选项上有一個unviewed标记。

在"airdroid网站"屏幕上列出了你的设备和PC之间的文件 要访问你可以在传输的文件上执行的操作的各种选项,请在"airdroid网站"屏幕上点击该文件 根据文件类型的不同,屏幕上显示的选项用于共享文件或者打开文件

你可以使用"邮件"面板发送和接收短信。

不需要选择你的Android和键入消息;参与你的web浏览器中的会话

"联系人"面板允许你浏览你的android联系人,并对它的执行操作例如"发送邮件"或者"通话"。 你也可以使用浏览器在掱机上编辑你的联系人

"通话记录"面板提供对你的呼叫历史记录的访问。

使用"音乐"面板可以将你的Android设备用作自动点唱机 在你的设备上搜索音乐并播放。 可以用于传输文件的"上载"和"下载"选项也可以用于"音乐"面板并允许你从设备传输音乐文件。

可以使用"铃声"面板单独管理铃聲 你可以在这个面板上和你的设备上发送和发送铃声,甚至为你的设备播放铃声

使用"照片"面板显示监视器上的照片而不是你的小型安卓屏幕。

在"应用"面板上你可以查看安装的设备应用程序。 你可以搜索特定的应用程序通过 icon 或者列表查看它们,卸载它们甚至下载. apk 文件。

要从你的电脑安装一个应用程序你可以使用"安装应用程序"按钮将它上传到你的设备上并安装它。

你必须通过在你的屏幕上点击选项來确认每个应用删除和安装

如果你想在计算机和你的Android之间复制和粘贴,请使用"剪贴板"选项 将文本复制到Android设备上,将它的粘贴到"剪贴板"框中然后单击蓝色箭头按钮。 这将文本放到设备上的剪贴板上因这里可以转到设备。文本消息电子邮件等。

你还可以将文本从设备複制到电脑 转到设备并复制一些文本。 然后在浏览器中打开"剪贴板"工具,然后单击"刷新"按钮( 两个圆形箭头) 你复制的文本将显示在"剪貼板"框中。

AirDroid现在有可以用于 Windows 和Mac的桌面应用 下载并安装AirDroid桌面应用程序并运行它。 登录到你在设备上登录的同一个帐户 你可以执行一些与web愙户机相同的任务,如传送文件发送和接收短信消息。

在使用完成后,可以通过在浏览器中签出来断开设备和PC的连接

你也可以通过點击应用程序中的"断开"按钮断开设备和电脑的连接。 要关闭from应用程序请点击屏幕右上角的菜单按钮( 三个垂直点) 并从菜单中选择"退出"。

在使用AirDroid桌面应用程序时右键单击通知栏中的AirDroid icon,然后从弹出式菜单中选择"注销"即可断开连接。

现在你已经准备好用你的网络浏览器替换USB电纜 如果不是收费的话,你就不用再碰你的USB电缆了

}

我要回帖

更多关于 sd卡授权文件访问 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信