Android用户单击文件资源管理器以使用app打开文件

时间:2013-07-24 15:16:02

标签: android file android-intent

我发现了一个问题。假设我的应用程序是音乐播放器。

我使用文件浏览器打开音频文件。如果音乐播放器尚未启动。我可以使用以下代码处理它:

Inside 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()。我应该如何修改代码以使其能够区分案例?或者这样做的正确方法是什么?

0 个答案:

没有答案