Browse Source

上传qq音乐代码

weicu
liwei1dao 1 year ago
parent
commit
6a279428e6
  1. 1
      local_plugins/chat_api/ios/chat_api/Sources/chat_api/QQMusicSystemFunctionHandler.swift
  2. 5
      local_plugins/qq_music/ios/qq_music/Sources/qq_music/QPlayAutoManager.swift
  3. 11
      local_plugins/qq_music/ios/qq_music/Sources/qq_music/QqMusicPlugin.swift

1
local_plugins/chat_api/ios/chat_api/Sources/chat_api/QQMusicSystemFunctionHandler.swift

@ -149,6 +149,7 @@ private class QQMusicSearchHandler: FunctionHandler {
result = [ result = [
"success": true, "success": true,
"message": "Found \(items.count) songs and started playing", "message": "Found \(items.count) songs and started playing",
"broadcast":false,
"data": songs "data": songs
] ]
} else { } else {

5
local_plugins/qq_music/ios/qq_music/Sources/qq_music/QPlayAutoManager.swift

@ -367,7 +367,8 @@ import QPlayAutoSDK
return return
} }
ensureLoginAndExecute { // 修改:使用 ensureQQMusicInstalledAndLoginAndExecute 替代 ensureLoginAndExecute
ensureQQMusicInstalledAndLoginAndExecute {
QPlayAutoSDK.playSongMid(atIndex: mids, play: index) { errorCode in QPlayAutoSDK.playSongMid(atIndex: mids, play: index) { errorCode in
if errorCode == 0 { if errorCode == 0 {
completion(true, nil) completion(true, nil)
@ -378,6 +379,8 @@ import QPlayAutoSDK
print(errorMessage) print(errorMessage)
} }
} }
} onQQMusicNotInstalled: {
completion(false, "QQ音乐未安装,无法播放歌曲列表")
} onLoginFailed: { } onLoginFailed: {
completion(false, "登录失败,无法播放歌曲列表") completion(false, "登录失败,无法播放歌曲列表")
} }

11
local_plugins/qq_music/ios/qq_music/Sources/qq_music/QqMusicPlugin.swift

@ -4,20 +4,13 @@ import QPlayAutoSDK
public class QqMusicPlugin: NSObject, FlutterPlugin { public class QqMusicPlugin: NSObject, FlutterPlugin {
private var methodChannel: FlutterMethodChannel? private var methodChannel: FlutterMethodChannel?
private var eventChannel: FlutterEventChannel?
private var eventSink: FlutterEventSink? private var eventSink: FlutterEventSink?
public static func register(with registrar: FlutterPluginRegistrar) { public static func register(with registrar: FlutterPluginRegistrar) {
let channel = FlutterMethodChannel(name: "qq_music", binaryMessenger: registrar.messenger()) let channel = FlutterMethodChannel(name: "com.yunqiinnovation.qq_music", binaryMessenger: registrar.messenger())
let instance = QqMusicPlugin() let instance = QqMusicPlugin()
instance.methodChannel = channel instance.methodChannel = channel
registrar.addMethodCallDelegate(instance, channel: channel) registrar.addMethodCallDelegate(instance, channel: channel)
// 设置事件通道
let eventChannel = FlutterEventChannel(name: "qq_music_events", binaryMessenger: registrar.messenger())
instance.eventChannel = eventChannel
eventChannel.setStreamHandler(instance)
// 设置代理 // 设置代理
QPlayAutoManager.shared.addDelegate(instance) QPlayAutoManager.shared.addDelegate(instance)
} }

Loading…
Cancel
Save