惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Cloudflare Blog
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
博客园 - 司徒正美
V
Visual Studio Blog
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
aimingoo的专栏
aimingoo的专栏
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
S
SegmentFault 最新的问题
T
The Blog of Author Tim Ferriss
D
Docker
Vercel News
Vercel News
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
爱范儿
爱范儿
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏

博客园 - showonce

使用群晖的SynologyDrive同步本地文件到NAS时如何设置过滤某些文件夹的方法 群晖通过 acme.sh 申请 ZeroSSL 泛域名证书(适配 80 端口封锁)+ 自动续期同步完整步骤 关于投影机通过TCP网络控制开关机的一些设置 关于电脑按下开机按钮或重启按钮后,电脑没有进入到windows系统桌面,而是进入到蓝屏恢复界面的解决方法 申请个人版的SSL证书(免费的) 第一次接触json所需要的知识总结,用在C#中 Unity开发时,在visual studio编辑器中没有中文注释的解决办法 Unity关于引用.Net或其他C# dll的问题。(我是用的版本是2018.3) 群晖系统,为域名添加证书,以及怎么申请免费的证书 Unity插件DOTween中的中的Ease 首次在macbook使用unity开发遇到的一些列问题 关于使用云服务器做广域网通讯测试的资料整理 二进制、六进制、八进制、十进制、十六进制等之间的转换规则 Unity中使用PersistentDataPath加载文件 C#进制转换 在VS里编辑unity代码调用系统方法不显示中文注释或英文注释 打开本地【C】【D】【E】驱动器时候提示 X:\ 找不到应用程序 - showonce windows系统开机启动一个程序的方法-总结 vlc的几种播放状态 使用VS开发的一个开机自启动启动、可接收指定数据关闭电脑或打开其他程序
关于Unity的Android工程,写文件的问题
showonce · 2023-01-10 · via 博客园 - showonce

Unity Android工程中的写文件

在安卓工程下,写入文件可以直接用:File.WriteAllText(UnityEngine.Application.persistentDataPath+"/XXX.txt","文件内容");

路径前面没有加“file://”也不会报错,或许也要看Android版本,我测试的环境下没有报错(虚拟机下测试的)

如果想把文件写道SD的根目录呢?改为:File.WriteAllText("./XXX.txt","文件内容"); //会报错,提示拒绝访问

或者改为:File.WriteAllText("/storage/emulated/0/XXX.txt","文件内容");//会报错,提示拒绝访问

其实就是程序的权限不足,只能在本程序的 UnityEngine.Application.persistentDataPath路径下可读可写。

接下来在Unity编辑器中稍作修改后,重新打包就可以写入了。


 操作步骤:File -> Build Settings -> Player Settings -> Other Settings,把Write Permssion的值改成External (SDCard)

也有其他博主通过到 Plugins/Android/AndroidManifest.xml中添加以下权限,不过我创建的工程并没有自动生成这个配置文件

 配置文件的修改内容为:

<!-- SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

如果Android的版本很高的话,10+

<!-- AndroidManifest.xml中 -->
<application android:requestLegacyExternalStorage="true" /application>