72 lines
2.6 KiB
Swift
72 lines
2.6 KiB
Swift
import UIKit
|
||
import Flutter
|
||
|
||
// Add these two import lines
|
||
import TIMPush
|
||
import tencent_cloud_chat_push
|
||
|
||
// 官方微信 SDK
|
||
import WechatOpenSDK
|
||
|
||
|
||
// Add `, TIMPushDelegate` to the following line
|
||
@UIApplicationMain
|
||
@objc class AppDelegate: FlutterAppDelegate, TIMPushDelegate {
|
||
private let CHANNEL = "wechat_business_view"
|
||
|
||
override func application(
|
||
_ application: UIApplication,
|
||
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
|
||
) -> Bool {
|
||
// 集成微信商家转账用户确认收款
|
||
let controller: FlutterViewController = window?.rootViewController as! FlutterViewController
|
||
let methodChannel = FlutterMethodChannel(name: CHANNEL, binaryMessenger: controller.binaryMessenger)
|
||
|
||
methodChannel.setMethodCallHandler { [weak self] (call, result) in
|
||
if call.method == "openBusinessView" {
|
||
if let args = call.arguments as? [String: Any],
|
||
let packageInfo = args["package"] as? String {
|
||
self?.openBusinessView(packageInfo: packageInfo)
|
||
result(true)
|
||
} else {
|
||
result(FlutterError(code: "BAD_ARGS", message: "Missing package info", details: nil))
|
||
}
|
||
} else {
|
||
result(FlutterMethodNotImplemented)
|
||
}
|
||
}
|
||
//end
|
||
GeneratedPluginRegistrant.register(with: self)
|
||
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
|
||
}
|
||
|
||
private func openBusinessView(packageInfo: String) {
|
||
let req = WXOpenBusinessViewReq()
|
||
req.businessType = "requestMerchantTransfer"
|
||
req.query = packageInfo
|
||
WXApi.send(req) { success in
|
||
print("WXOpenBusinessViewReq send result: \(success)")
|
||
}
|
||
}
|
||
|
||
// To be deprecated,please use the new field businessID below.
|
||
@objc func offlinePushCertificateID() -> Int32 {
|
||
return TencentCloudChatPushFlutterModal.shared.offlinePushCertificateID();
|
||
}
|
||
|
||
// Add this function
|
||
@objc func businessID() -> Int32 {
|
||
return TencentCloudChatPushFlutterModal.shared.businessID();
|
||
}
|
||
|
||
// Add this function
|
||
@objc func applicationGroupID() -> String {
|
||
return TencentCloudChatPushFlutterModal.shared.applicationGroupID()
|
||
}
|
||
|
||
// Add this function
|
||
@objc func onRemoteNotificationReceived(_ notice: String?) -> Bool {
|
||
TencentCloudChatPushPlugin.shared.tryNotifyDartOnNotificationClickEvent(notice)
|
||
return true
|
||
}
|
||
} |