使用Android中非活动类的内部存储

时间:2012-04-10 06:45:31

标签: android android-mediaplayer

我在Android中播放之前正在解密视频。当我解密它时,我想存储在Android私人文件夹中,以便其他应用程序和用户无法访问它 - 我查找了一些看起来像这样的代码

String FILENAME = "hello_file";
String string = "hello world!";

FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
fos.write(string.getBytes());
fos.close();

我从一个不是活动类的辅助类调用它。我该怎么做呢 ?似乎期待来自活动的电话。然后我如何从文件夹中最终播放它?

2 个答案:

答案 0 :(得分:2)

通过实例化helper类,构造函数应该接受Context作为额外参数并将其保存为类成员 因此,在调用活动中,您只需将this传递给它。

然后调用ctx.openFileOutput(FILENAME, Context.MODE_PRIVATE) - 假设您将类成员命名为ctx

答案 1 :(得分:0)

在应用程序启动时为某个地方创建ApplicationContext的静态引用(扩展应用程序类并执行它是更好的选项),然后访问它以使用文件存储..