因此,我正在将IRC Bot移植为在使用4.4.2(API 19)的Tab上运行
现在给我带来麻烦的功能是报价数据库,该数据库可以添加用户的报价并将其存储在文件中-可以检索和显示它们。现在,我已经在创建文件方面投入了很多精力。方法如下:
public void createFile(String filenick){
try {
FileOutputStream os = MainActivity.context.openFileOutput(filenick, 0);
os.close();
} catch (FileNotFoundException e) {
System.out.println("createFile "+filenick+" happened");
} catch (IOException e) {
System.out.println("IO error " + filenick + " happened");
}
}
上下文来自
public class MainActivity extends Activity {
public static Context context=new MainActivity().getApplication();
它可以很好地编译,并且Android Studio不会给我任何类型的错误。Bot可以执行他所有的功能,除此之外。
java.lang.NullPointerException
at com.coilworks.dreaddroid.QDBClass.createFile(QDBClass.java:175)
at com.coilworks.dreaddroid.QDBClass.adder(QDBClass.java:57)
对于上下文:QDBClass.java:175是从FileOutputStream开头的行。
57是调用createFile的位置。
到目前为止,我尝试了android文档所保存的Outputstreams和writer的所有可能迭代。
也许我只是搜索了错误的字词?
您永远不要Activity
直接实例化一个。这样做是框架的工作。
public static Context context=new MainActivity().getApplication();
该行可能是您看到的许多问题的根源。在这种情况下context
将始终null
如此。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句