assetManager.closeの罠(Android):自分用のメモ
/assetsに配置したファイルの処理をネットで見つけたHPの記述を参考にやってたらハマった。
そのHPのサンプルソースは
AssetManager assetManager = getResources().getAssets();
InputStream inputStream = assetManager.open(path);
としてオープンしたファイルを
inputStream.close();
assetManager.close();
の様に閉じる感じで書いてあったのだが、それだとActivityが切り替わるタイミングで落ちる。
しばらく悩んでassetManager.close()を削除したら問題なく動作するようになった。
その後「AndroidゲームプログラミングA to Z」
をネットで立ち読みしたらサンプルコードにassetManager.close()は
記述されていなかったのでやはりinputStream.close()だけ行えば良さそうである。
/assetsに配置したファイルの処理をネットで見つけたHPの記述を参考にやってたらハマった。
そのHPのサンプルソースは
AssetManager assetManager = getResources().getAssets();
InputStream inputStream = assetManager.open(path);
としてオープンしたファイルを
inputStream.close();
assetManager.close();
の様に閉じる感じで書いてあったのだが、それだとActivityが切り替わるタイミングで落ちる。
しばらく悩んでassetManager.close()を削除したら問題なく動作するようになった。
その後「AndroidゲームプログラミングA to Z」
をネットで立ち読みしたらサンプルコードにassetManager.close()は
記述されていなかったのでやはりinputStream.close()だけ行えば良さそうである。