Android之使用picker打开相应的app

Android之使用picker打开相应的app,如果是music则可以选择是否使用相应打开的app进行播放。

在Manifest中设置,则可在选择音频文件的时候使用配置了以下的app打开

<intent-filter>
                <action android:name="android.intent.action.VIEW" >
                </action>
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="audio/*" />
            </intent-filter>


得到打开的音乐文件对应的地址

intent = getIntent();

String url = intent.getDataString();
		if (url == null) {
			return;
		}
		System.out.println("url:"+getString(url));
		final MediaPlayer player = new MediaPlayer();
		player.setAudioStreamType(AudioManager.STREAM_MUSIC);
		player.reset();
		player.setDataSource(getString(url));
		player.prepareAsync();
		
		player.setOnPreparedListener(new OnPreparedListener() {
			
			@Override
			public void onPrepared(MediaPlayer mp) {
				System.out.println("123abcdefgh");
				player.start();
			}
		});
		
	}
	
        // 由于得到的文件是file:///这样子开头,所以必须是截取出来
	private String getString(String url){
		return url.substring(7);
	}

  

原文地址:https://www.cnblogs.com/lee0oo0/p/3251390.html