如何在SqlLite数据库中保存歌曲?

时间:2016-11-28 07:37:12

标签: android

我想在我的应用程序中保存SqlLite数据库中的歌曲。并希望收听离线音乐。 我的应用程序是在线播放音乐,并通过链接在线播放音乐 请指导。 在此先感谢

1 个答案:

答案 0 :(得分:0)

目前我正在开发媒体播放器应用程序,我的建议是保存在app文件夹中加密的歌曲。而不是在SQL中保存歌曲的路径。

我正在做同样的事情,但我没有保存在SQL中,而是使用 GSON 序列化 ArrayList 对象,并将它们保存在en 加密的共享中偏好设置即可。该对象只有必需品(标题,艺术家......)和保存歌曲的路径。

示例代码:

public void saveReferenceToSavedSongs(String json) {
    try {
        editor.putString("songs_key", json);
        editor.commit();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

public String getReferenceToSavedSongs() {
    try {
        return sharedPreferences.getString("songs_key", "");
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "";
}

如何使用:(不要忘记加密json)

// to save them
ArrayList<Song> temp = new ArrayList<Song>();
// add songs
saveReferenceToSavedSongs(new Gson().toJson(temp));



// to load them
ArrayList<Song> songs = load(getReferenceToSavedSongs());


public ArrayList<Song> load(String json) {
    if (json != null && !json.equals("")) {

        Gson gson = new Gson();
        Type typeToken = new TypeToken<ArrayList<Song>>() {
        }.getType();
        savedSongs = gson.fromJson(json, typeToken);
    }
    return savedSongs;
}