@@ -34,6 +34,7 @@ class RewardView: NSObject, FlutterPlatformView, FlutterStreamHandler, BUNativeE
34
34
private var flutterRegister : FlutterPluginRegistrar
35
35
private var event : FlutterEventChannel
36
36
private var eventSink : FlutterResult ?
37
+ private var rewardedAd : BUNativeExpressRewardedVideoAd
37
38
38
39
init ( withFrame frame: CGRect , viewIdentifier viewId: Int64 , arguments args: Any ? , binaryMessenger register: FlutterPluginRegistrar ) {
39
40
flutterRegister = register
@@ -44,28 +45,48 @@ class RewardView: NSObject, FlutterPlatformView, FlutterStreamHandler, BUNativeE
44
45
}
45
46
var codeId : String ? = " "
46
47
event = FlutterEventChannel ( name: " com.tongyangsheng.pangolin/pangolinRewardAd_ \( viewId) " , binaryMessenger: register. messenger ( ) )
47
- if let args = args as? [ String : Any ] {
48
- codeId = args [ " mCodeId " ] as? String
48
+ let args = args as? [ String : Any ]
49
+ if args != nil {
50
+ codeId = args![ " mCodeId " ] as? String
49
51
}
50
52
rewardView = UIViewController ( )
53
+ let model = BURewardedVideoModel ( )
54
+ model. userId = ( args![ " userId " ] as! String )
55
+ print ( args![ " rewardName " ] as Any )
56
+ print ( " --------------------------- " )
57
+ if ( ( args![ " rewardName " ] as? String ) != nil ) {
58
+ model. rewardName = ( args![ " rewardName " ] as! String )
59
+ }
60
+ if ( ( args![ " extra " ] as? String ) != nil ) {
61
+ model. extra = ( args![ " extra " ] as! String )
62
+ }
63
+
64
+ if ( ( args![ " rewardAmount " ] as? Int ) != nil ) {
65
+ model. rewardAmount = ( args![ " rewardAmount " ] as! Int )
66
+ }
67
+
68
+ rewardedAd = BUNativeExpressRewardedVideoAd ( slotID: codeId!, rewardedVideoModel: model)
51
69
super. init ( )
52
70
53
71
event. setStreamHandler ( self )
54
- let model = BURewardedVideoModel ( )
55
- // model.userId = codeId
56
- // model.rewardName = rewardName
57
- // model.extra = mediaExtra
58
-
59
- let rewardedAd = BUNativeExpressRewardedVideoAd ( slotID: codeId!, rewardedVideoModel: model)
60
72
rewardedAd. loadData ( )
61
73
rewardedAd. delegate = self
62
- rewardedAd . show ( fromRootViewController : rewardView )
74
+
63
75
}
64
76
65
77
func view( ) -> UIView {
66
78
return rewardView. view
67
79
}
68
80
81
+ func nativeExpressRewardedVideoAdDidDownLoadVideo( _ rewardedVideoAd: BUNativeExpressRewardedVideoAd ) {
82
+ rewardedAd. show ( fromRootViewController: rewardView)
83
+ }
84
+ // 关闭
85
+ func nativeExpressRewardedVideoAdDidClose( _ rewardedVideoAd: BUNativeExpressRewardedVideoAd ) {
86
+ eventSink ? ( " onAdClose " )
87
+ rewardView. dismiss ( animated: false )
88
+ }
89
+
69
90
70
91
func onListen( withArguments arguments: Any ? , eventSink events: @escaping FlutterEventSink ) -> FlutterError ? {
71
92
self . eventSink = events
0 commit comments