我发现一个问题。假设我的应用程序是一个音乐播放器。
我使用文件资源管理器打开音频文件。如果音乐播放器尚未启动。我可以用下面的代码处理它:
在 OnCreate 内部:
Intent intent = getIntent();
String action = intent.getAction();
if (action != null && action.equals(Intent.ACTION_VIEW)) {
FilePath = intent.getData().getPath();
//do something
}
但如果我的音乐播放器启动,则不会调用 OnCreate,而是会调用 OnResume。但是,它将变为 Intent.ACTION_MAIN,而不是 Intent.ACTION_VIEW。然后我尝试
OnResume 内部:
Intent intent = getIntent();
String action = intent.getAction();
if (action != null && action.equals(Intent.ACTION_MAIN)) {
FilePath = intent.getData().getPath();
//do something
}
但有一个问题。在正常的android活动中,例如,在被另一个应用程序隐藏后恢复一个应用程序,没有intent.getData().getPath()。我应该如何修改代码以使其能够区分大小写?或者这样做的正确方法是什么?