現在、androidのゲームアプリを開発しています。
言語はjavaで、android studioを使っています。
アプリを終了するタイミングで、以下のようなメソッドを実行し、外部ストレージへファイルを保存しようとしているのですが、書き込めていないようなのです。
public static void save(FileIO files) {
BufferedWriter out = null;
try {
out = new BufferedWriter(new OutputStreamWriter(
files.writeFile(".mrnom")));
out.write(Boolean.toString(soundEnabled));
for (int i = 0; i < 5; i++) {
out.write(Integer.toString(highscores[i]));
}
} catch (IOException e) { //デフォルト設定があるのでエラーは無視 } finally { try { if (out != null) out.close(); } catch (IOException e) { } } }
上のコードで用いているFileIOインターフェイスのwriteFileメソッドは以下のように実装しています。
package jp.gr.java_conf.uroboros.mrnomgame.framework.impl;
import android.content.res.AssetManager;
import android.os.Environment;
import jp.gr.java_conf.uroboros.mrnomgame.framework.FileIO;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class AndroidFileIO implements FileIO {
AssetManager assets;
String externalStoragePath;
public AndroidFileIO(AssetManager assets) { this.assets = assets; this.externalStoragePath = Environment.getExternalStorageDirectory() .getAbsolutePath() + File.separator; }
(省略)
@Override public OutputStream writeFile(String fileName) throws IOException{ return new FileOutputStream(externalStoragePath + fileName); }
}
このようにして、実機につなぎテストをしても、.mrnomファイルが作成されていないようなのです。どなたか何かわかることがあればご教示お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/09/10 11:01