我在Android中的内部存储中编写文件时遇到了一些问题。我试图从一个不是活动的助手类做到这一点。这是我正在使用的代码:
FileOutputStream fos = context.openFileOutput("media", context.MODE_PRIVATE);
fos.write(media.getBytes());
fos.close();
它在第一行抛出了一个空指针异常。我试过this.context.openFileOutput("media",this.context.MODE_PRIVATE);
& this.context.openFileOutput("media",Context.MODE_PRIVATE);
但没有任何帮助。
知道如何解决这个问题吗?
答案 0 :(得分:1)
实际上我有同样的问题,这是解决方案:
您可以使用:
<强> Activity1.java 强>
onCreate()
helperClass mHelper= new helperClass(CallingActivity.this);
<强> helperClass.java 强>
//declare a context
context refContext;
//constructor
public helperClass(context mContext)
{
refContext=mContext;
}
//and you code
hash= jsonObj.getString("hash");
Log.w("CLIENT AUTH HASH","SHOW CLIENT AUTH HASH : "+hash);
FileOutputStream out = refContext.openFileOutput("autohash",Context.MODE_PRIVATE);
out.write(hash.getBytes());
out.close();
希望这有帮助!
答案 1 :(得分:0)
首先尝试获取上下文
“context = getApplicationContext()”
答案 2 :(得分:0)
验证类助手的实例从哪个活动传递上下文的引用,您指定更多的scenary,例如,谁继承了帮助器类,或者如何设置上下文属性的实例?