ash*_*jju 6 android parse-platform
我使用以下代码将ParseObject与ParseFile一起存储.我在Application子类中启用了Parse本地数据存储区.当应用程序连接到Internet时,此代码将ParseObject的实例存储在本地数据存储区和解析服务器中.
final ParseFile file = new ParseFile(position + ".mp4", data);
file.saveInBackground(new SaveCallback() {
@Override
public void done(ParseException e) {
ParseObject po = new ParseObject("Recordings");
po.put("code", position);
po.put("name", myname);
po.put("file", file);
po.saveEventually();
}
});
Run Code Online (Sandbox Code Playgroud)
当应用未连接到互联网时,相同的代码会抛出以下异常.java.lang.IllegalStateException:无法编码未保存的ParseFile.应用程序崩溃了.对象未存储在本地数据存储中.
那么当没有互联网时,如何在解析本地数据存储区中存储带有ParseFile的ParseObject?
我通过简单地用ParseObject存储文件的字节来解决这个问题.当我想要我的文件时,我将这些字节写回文件.
我的要求是在解析中存储带有名字的录音文件.我按照以下步骤操作:1.获取文件的字节数组2.将字节数组放入ParseObject 3.调用ParseObject#saveEventually()
码:
File file = new File(filePath);
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
byte data[] = new byte[(int) file.length()];
fis.read(data);
ParseObject obj = new ParseObject("Recordings");
obj.put("name", name);
obj.put("data", data);
obj.saveEventually();
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4131 次 |
| 最近记录: |