作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的应用尝试 Parse 作为可能的后端,但在处理要上传到它的大文件时我有一个顾虑。
文档中说我需要将文件转换为byte array
并将其传递到ParseFile
中
byte[] data = "Working at Parse is great!".getBytes();
ParseFile file = new ParseFile("resume.txt", data);
然而,大文件显然会在此处抛出 OutOfMemoryException
,因为将文件加载到字节数组中会将整个文件加载到内存中。
所以我的问题是如何将大文件上传到 Parse,同时避免出现 OOME?
最佳答案
如果您的用户完全控制上传过程,他们很可能最终会导致应用程序崩溃,因为许多用户对文件大小没有充分的了解。我注意到解析有 a nice wrapper class in their API for iOS (PFFile)限制为 10 MB,遗憾的是他们没有为 android 实现相同的。
我认为您将不得不使用他们的 REST API 手动执行此操作。查看他们的 REST API,更具体地说是 files endpoint .您可以轻松地将 HttpURLConnection
与 FileInputStream
结合使用,这使您在使用流的上传过程中更加灵活。我通常更愿意手动做事,而不是使用一个不太清楚幕后发生的包装器,但如果你不是,我可以发布一个简约的例子。
关于android - 将较大的文件上传到 Parse 时可能出现 OutOfMemoryException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25194677/
我是一名优秀的程序员,十分优秀!