【发布时间】:2021-10-06 06:58:56
【问题描述】:
所以我有一个音乐播放器应用程序。我希望用户应该能够删除不是由我的应用程序创建的音乐文件。我有文件路径,我尝试使用 File.delete() 但它总是返回 false。如何使用它们的路径删除音乐文件。请有人帮忙。 我使用 File.getPath 获得的路径 - /storage/emulated/0/Samsung/Music/Over_the_horizon.mp3
我的 AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.naman.musicplayer">
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.MusicPlayer">
<activity
android:name=".PlaySong"
android:exported="true" />
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
**Code I am using to delete the music**
``` @Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
File file = files.get(i);
//files = new ArrayList<File>();
boolean deleted = file.delete();
return deleted;
}```
【问题讨论】:
-
你是如何获得路径的?你能把你要删除的文件的路径吗?
-
我正在使用 File.getPath() 获取路径
-
这个文件是目录吗?您可以编辑您的问题并粘贴您使用 File.getPath() 获得的内容吗?
-
我编辑了请检查
-
删除前是否检查过文件是否存在?
标签: java android android-studio android-mediaplayer delete-file