Я хочу загрузить разные кубические карты из базы данных. Я использовал следующий код, но он не работает. Каждый раз вылетает. Я не могу получить путь к основному внешнему хранилищу в Android. Кто-нибудь знает, как я могу хранить данные из базы данных в собственной платформе GearVR?
public class SampleActivity extends GVRActivity {
final File externalFilesDir = getExternalFilesDir(null);
private SampleMain main;
private long lastDownTime = 0;
//ref to storage firebase
private StorageReference cubemap_ref;
@Override
protected void onCreate(Bundle icicle) {
FirebaseStorage storage = FirebaseStorage.getInstance();
StorageReference storageRef = storage.getReference();
cubemap_ref = storageRef.child("cubemaps/cubemap_example.zip");
final long TEN_MEGABYTE = 1024 * 1024 * 10;
cubemap_ref.getBytes(TEN_MEGABYTE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
@Override
public void onSuccess(byte[] bytes) {
File file = new File(externalFilesDir.getAbsolutePath(), "cubemap.zip");
try {
OutputStream os = new FileOutputStream(file);
os.write(bytes);
os.close();
} catch (IOException e) {
android.util.Log.w("ExternalStorage", "Error writing " + file, e);
}
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception exception) {
// Handle any errors
}
});
super.onCreate(icicle);
main = new SampleMain(this);
setMain(main, "gvr.xml");
}
}
Заранее спасибо.