Android:在新活动中打开PCM文件

Android:在新活动中打开PCM文件,android,file,android-activity,pcm,android-graphview,Android,File,Android Activity,Pcm,Android Graphview,我目前正在开发一个应用程序,用于播放PCM文件并显示其生成的折线图,这要感谢jjoe64 我现在的问题是如何在新活动中打开PCM文件。基本上,应用程序必须显示所选文件的折线图。此特定文件是一个列表条目,因此,当用户单击列表中的文件名时,它将被定向到应用程序中的一个新活动以进行图形显示 下面是打开列表中文件的代码,也称为DBActivity.java中问题的第一部分: 在这里查看如何在开始的活动中获得您为意图提供的额外信息。您只需调用getIntent.getExtras,它会返回一个包,文档如下

我目前正在开发一个应用程序,用于播放PCM文件并显示其生成的折线图,这要感谢jjoe64

我现在的问题是如何在新活动中打开PCM文件。基本上,应用程序必须显示所选文件的折线图。此特定文件是一个列表条目,因此,当用户单击列表中的文件名时,它将被定向到应用程序中的一个新活动以进行图形显示

下面是打开列表中文件的代码,也称为DBActivity.java中问题的第一部分:


在这里查看如何在开始的活动中获得您为意图提供的额外信息。您只需调用getIntent.getExtras,它会返回一个包,文档如下:


祝你好运:

我最近做了这件事,所以代码是:Intent-receiveFile=getIntent;Bundle b=receiveFile.getExtras;我不知道接下来该做什么,因为我希望第二个活动接收第一个活动的文件。下一步我该怎么办?MimeType会工作吗?正如@chip所说,您可以从intent:getIntent.getExtras.getParcelableDBActivity.EXTRA_文件中获取Uri。然后只需打开带有uri的文件。或者,如果您对Parcelable不友好,可以将Uri转换为路径字符串,将其放在第一个活动openFile.putextra_文件Uri.getPath中的bundle中;然后通过执行以下操作在第二个活动中检索路径:getIntent.getStringExtra_文件,并通过执行Uri.parseu_路径将其解析为Uri实现接口Parcelable的Uri类,您可以从Intent添加/获取它
public final static String EXTRA_FILE = "com.example.ecg_to_go.FILENAME";

getListView().setOnItemClickListener(new OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, final int position, long id) {
        final int sFilePosition = position;
        sFile = files[sFilePosition];
        Intent openFile = new Intent(DBActivity.this, ContentActivity.class);
        Uri uri = Uri.fromFile(sFile);
        openFile.putExtra(EXTRA_FILE, uri);
        startActivity(openFile);
    }
});
private File ecgFile;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_content);
    ecgFile = new File(DBActivity.EXTRA_FILE);
    playEcg(ecgFile);   // display the PCM file
}