flutter_plugin_ycad 0.0.3 flutter_plugin_ycad: ^0.0.3 copied to clipboard
易车广告SDK插件(iOS,Android).
import 'dart:convert';
import 'dart:developer';
import 'dart:io';
import 'package:flutter/material.dart';
import 'dart:async';
import './models/yc_ad_model.dart';
import 'package:logger/logger.dart';
import 'package:flutter/services.dart';
import 'package:flutter_plugin_ycad/flutter_plugin_ycad.dart';
void reportErrorAndLog(FlutterErrorDetails details) {
print("...// 构建错误信息");
print(details);
Zone.current.handleUncaughtError(details.exception, details.stack);
print("... //上报错误和日志逻辑");
}
FlutterErrorDetails makeDetails(Object obj, StackTrace stack) {
print("...// 构建错误信息");
// EasyLoading.showError(obj.toString(), duration: Duration(seconds: 30));
print(obj);
print(stack);
}
void main() {
runZoned(
() => runApp(MyApp()),
onError: (Object obj, StackTrace stack) {
var details = makeDetails(obj, stack);
reportErrorAndLog(details);
},
);
// runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
List aa = [];
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
TextButton(onPressed: (){
FlutterPluginYcad.YXADInit('485572e2b357f9c7471e84f8092e977a',key: '140aae90c852e3a03406c005dfa5bf2c').then((value){
print("success=$value");
}).catchError((e){
print("error=$e");
});
}, child: Text('初始化')),
TextButton(onPressed: (){
// \sizeModel1.pid(@"285820").areaId(@"110000");
FlutterPluginYcad.YXADFetch(["285771","285778","285785","285792","285799","285820","285827","285834"],'110000').then((res){
print("success=$res");
if(res != "noData"){
var json = jsonDecode(res);
for(var obj in json){
if(Platform.isAndroid){
YXAndroidADBean adbean = YXAndroidADBean.fromJson(obj);
if(Platform.isAndroid){
adbean.picUrl = adbean.picUrls[0];
}
print(adbean.picUrls);
aa.add(adbean);
}else{
YXiOSADBean adbean = YXiOSADBean.fromJson(obj);
print(adbean.result.picUrl);
aa.add(adbean);
}
}
}
}).catchError((e){
print("error=$e");
});
}, child: Text('获取广告')),
TextButton(onPressed: (){
// \sizeModel1.pid(@"285820").areaId(@"110000");
if(Platform.isAndroid){
YXAndroidADBean bean = aa[0];
print(jsonEncode(bean));
FlutterPluginYcad.YXADClick(jsonEncode(bean)).then((value){
}).catchError((e){
print("error=$e");
});
}else{
YXiOSADBean bean = aa[0];
print(jsonEncode(bean));
FlutterPluginYcad.YXADClick(jsonEncode(bean)).then((value){
}).catchError((e){
print("error=$e");
});
}
}, child: Text('点击')),
TextButton(onPressed: (){
// \sizeModel1.pid(@"285820").areaId(@"110000");
if(Platform.isAndroid){
YXAndroidADBean bean = aa[0];
print(jsonEncode(bean));
FlutterPluginYcad.YXADExpose(jsonEncode(bean)).then((value){
}).catchError((e){
print("error=$e");
});
}else{
YXiOSADBean bean = aa[0];
print(jsonEncode(bean));
FlutterPluginYcad.YXADExpose(jsonEncode(bean)).then((value){
}).catchError((e){
print("error=$e");
});
}
}, child: Text('曝光')),
],
),
),
),
);
}
}