我目前有这段代码......:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent intent = getIntent();
if (intent.getAction().equals("android.intent.action.VIEW")) {
String filename = intent.getData().getPath();
file = new File(filename);
} else {
file = new File(sdcard, "myfile.txt");
}
}
...仅适用于应用启动(从启动器或文件浏览器启动时)。
我的问题是我在操作栏中使用其他活动并带有后退按钮。
当我们返回MainActivity时,它会调用OnCreate
方法,此时intent.getAction()
出错。
我猜动作字符串为空,因为错误是:
java.lang.RuntimeException: Unable to start activity : java.lang.NullPointerException
所以我的问题是下一个:当用户按下第二个活动的后退按钮时,如何阻止我的MainActivity调用intent.getAction()
方法?
PS:我不需要这个方法被调用两次;)