我遵循了本教程:https://www.youtube.com/watch?v=1D1Jo1sLBMo&t=320s&ab_channel=EasyTuto 但我无法获取我的播放列表或授权请求,但在 Android 13 上我做了以下测试
我将清单和主要活动上的“读取外部存储”替换为“读取媒体音频” 现在,我有一个请求授权的窗口,但即使我指示“确定”,我的播放列表也不会显示,它告诉我文本“音乐未找到”
信息:android studio 代码 java
谁能告诉我问题出在哪里... 我已经这样了好几天了,我迷路了...... 谢谢大家
我很长一段时间都在与不同的版本/权限作斗争。最后我的配置是 显现:
<application
android:requestLegacyExternalStorage="true"
和我称为“Startup”的java代码 String[] 权限 ={READ_EXTERNAL_STORAGE,WRITE_EXTERNAL_STORAGE, READ_MEDIA_AUDIO};
if (ContextCompat.checkSelfPermission(this, Arrays.toString(permissions))
!= PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, permissions, MY_PERMISSIONS_REQUEST);
} else {
first_messageDialog(mContext.getString(R.string.attention), mContext.getString(R.string.androidQ));
Intent i = new Intent(this, PlaylistMainActivity.class);
startActivity(i);
this.finish();
}
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
switch (requestCode) {
case MY_PERMISSIONS_REQUEST:
if (grantResults.length > 0) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED
|| (grantResults[1] == PackageManager.PERMISSION_GRANTED)
|| (grantResults[2] == PackageManager.PERMISSION_GRANTED))
{
// Log.i("PERMISSION RESULTS", "Read Storage " + grantResults[0] + " Write Storage " + grantResults[1]);
Intent i = new Intent(this, PlaylistMainActivity.class);
startActivity(i);
this.finish();
}
break;
}
这消除了所有愚蠢的版本检查,并且在适当的情况下继续工作。