Git Product home page Git Product logo

pangolin's Introduction

drawing

前言

⚠️ 在使用本插件前请认真,仔细阅读穿山甲官方文档。本插件将尽量保留 SDK 内容和各 API 相关内容,如出现在官方文档以外报错信息可以留言 issue,或通过文末联系方式联系作者(注明来意)。针对你可能会遇到的问题,在使用过程中可以先查阅 👉

公告

Flutter 最新的 Stable 版本已经来到1.22.4,本插件不再支持 Flutter1.12.0以下的用户,请各位及时更新 Flutter 版本以保证 API 的兼容和用户体验的优化 📈。

简介

Pangolin 是一款 Flutter 插件,集成了字节跳动旗下的广告平台——穿山甲的 Android 和 iOS 的 SDK,方便开发者直接在 Flutter 层面调用相关方法。

版本信息

版本 更新信息
0.0.1 穿山甲 SDK 接入,开屏广告实现
0.0.2 修复开屏广告偶现 TopBar 的 Bug
0.0.5 激励视频 Android 接入
0.0.6 激励视频接口参数重写
0.0.7 移除默认 Activity 直接在当前界面调起广告
0.0.8 紧急修复 iOS 端 报错 Bug
0.1.0 iOS 激励视频支持
0.1.1 自动下载网络环境可配置
0.1.2 修复了 toast 无法移除的问题
0.1.3 修复了部分情况下 iOS 无法收到回调的问题,iOS 的开屏现在会自动关闭
0.1.4 修复了部分情况下 iOS 在使用 Cocoapods 导入 SDK 时存在的错误
0.1.5 支持 iOS banner 广告
0.1.6 支持 iOS 插屏广告
0.1.7 修复“isExpress”参数的传递问题
0.1.8 修复部分用户 context 获取不到的问题 原因是部分用户没有走 onAttachedToEngine(),走了 registerWith()
0.1.9 修复部分用户 activity 获取不到的问题 原因是部分用户没有走 onAttachedToActivity() 为了满足所有用户,我太难了 😭
0.2.0 支持 Android banner 广告
0.2.1 支持 Android 插屏广告
0.2.2 接入了 Flutter1.20.1 环境 新增一个 banner 广告的手动关闭方法
0.2.3 新增了一个激励视频的回调——关闭激励视频
0.2.4 新增 iOS Banner 广告移除方法,校验 Flutter1.22 环境下的运行情况
0.2.5 根据 Android 最新 SDK 更新了 API
0.2.6 测试了功能 Flutter1.22.4 修复了部分 issue 反馈的错误 采纳了部分优化建议
0.2.7 尝试修复 Android 上的向下兼容性问题

插件开发环境相关

Flutter

Flutter (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.1 19B88, locale zh-Hans-CN)

Dart

Dart VM version: 2.4.1 (Wed Aug 7 13:15:56 2019 +0200) on "macos_x64"

Platform

Xcode - develop for iOS and macOS (Xcode 11.2)
Android Studio (version 3.6)

穿山甲

iOS - cocoapods lastest version
Android - 自己去官网选择版本下载

安装

# add this line to your dependencies
dependencies:
  pangolin: ^0.2.7

环境配置

使用前请确认您以根据穿山甲的官方文档中的步骤进行了相应的依赖添加,权限获取以及参数配置

Android

穿山甲 Android SDK 接入基础配置
⚠️ 说明:

  • 从 Android 6.0(API 23)开始,对系统权限做了很大的改变。在之前用户安装 APP 前,只是把 APP 需要使用的权限列出来给用户告知一下,APP 安装后都可以访问这些权限。从 6.0 开始,一些敏感权限,需要在使用时动态申请,并且用户可以选择拒绝授权访问这些权限,已授予过的权限,用户也可以去 APP 设置页面去关闭授权。有关动态权限的获取 pub 上有很多 package,我个人不会在插件内集成权限申请相关,方便使用者灵活配置,可根据实际需求选择相应插件和权限。

  • 穿山甲官方推荐在合适时机申请用户权限,但是使用本插件前请务必确认你所需的权限已经获得用户授权。

iOS

穿山甲 iOS SDK 接入基础配置

Pangolin 集成

Android

在 Android 端你可能需要简单的四个小步骤导入穿山甲 SDK 具体步骤已为你写好请戳 👉

iOS

pod install

穿山甲平台

在使用之前必须确认您在穿山甲平台的控制台已经注册了自己 app 所对应的应用以及对应广告类型的代码位,由于穿山甲包含多种类型的广告和功能请务必确认你在插件中注册的和你在平台注册的一一对应。

开始使用

初始化(register)

调用穿山甲 SDK 的第一步是对 SDK 的初始化

await Pangolin.registerPangolin(
        appId: "Your AppID",
        useTextureView: true,
        appName: "Your AppName",
        allowShowNotify: true,
        allowShowPageWhenScreenLock: true,
        debug: true,
        supportMultiProcess: true
    )

参数说明

参数 描述 默认值
appId 在穿山甲平台注册的自己的 AppId null
useTextureView 使用 TextureView 控件播放视频,默认为 SurfaceView,当有 SurfaceView 冲突的场景,可以使用 TextureView false
appName 自己的应用名称 null
allowShowNotify 是否允许 sdk 展示通知栏提示 true
allowShowPageWhenScreenLock 是否在锁屏场景支持展示广告落地页 true
debug 测试阶段打开,可以通过日志排查问题,上线时去除该调用 true
supportMultiProcess 是否支持多进程 false
  • 注意以上参数大部分针对 Android 端,iOS 端由于穿山甲 SDK 本身的原因并没有过多的参数配置,有用的参数仅为 appId,appName。

接入成功 debug 信息

  • Android
E/TTAdSdk-InitChecker( 5148): ==当前进程名:com.tongyangsheng.pangolin_example
E/TTAdSdk-InitChecker( 5148): ==穿山甲sdk接入,环境为debug,初始化配置检测开始==
E/TTAdSdk-InitChecker( 5148): AndroidManifest.xml中TTMultiProvider配置正常
E/TTAdSdk-InitChecker( 5148): AndroidManifest.xml中TTFileProvider配置正常
E/TTAdSdk-InitChecker( 5148): AndroidManifest.xml中权限配置正常
E/TTAdSdk-InitChecker( 5148): 动态权限正常:android.permission.READ_PHONE_STATE
E/TTAdSdk-InitChecker( 5148): 动态权限正常:android.permission.ACCESS_COARSE_LOCATION
E/TTAdSdk-InitChecker( 5148): 动态权限正常:android.permission.ACCESS_FINE_LOCATION
E/TTAdSdk-InitChecker( 5148): 动态权限正常:android.permission.WRITE_EXTERNAL_STORAGE
E/TTAdSdk-InitChecker( 5148): ==穿山甲sdk初始化配置检测结束==
  • iOS 仅提示穿山甲接入成功

⚠️ 进行下一步操作前请确认,穿山甲已经成功接入并且检测正常。

加载开屏广告

        Pangolin.loadSplashAd(
            mCodeId: "Your CodeId",
            debug: false);

参数说明

参数 描述 默认值
mCodeId 在穿山甲平台注册的自己的广告位 id null
debug 测试阶段打开,可以通过日志排查问题,上线时去除该调用 true

加载激励视频

激励视频的原生接入相对复杂,但是我已经给各位留好了接口,只需简单的几步就可以加载到你的激励视频
⚠️ 使用前请确认您已在穿山甲平台的控制台建立了你的激励视频广告 id。

    await Pangolin.loadRewardAd(
      isHorizontal: false,
      debug: false,
      mCodeId: "Your CodeId",
      supportDeepLink: true,
      rewardName: "Your Reward Name",
      rewardAmount: 3,
      isExpress: true,
      expressViewAcceptedSizeH: 500,
      expressViewAcceptedSizeW: 500,
      userID: "user123",
      mediaExtra: "media_extra"
        );

参数说明

参数 描述 默认值
isHorizontal 是否横屏 false
mCodeId 在穿山甲平台注册的自己的广告位 id null
debug 此处 debug 为 true 的情况下 我会给你显示整体进程的一个 Toast 方便你调试 true
supportDeepLink 是否横屏 false
rewardName 奖励的名称 null
rewardAmount 奖励数量 null
isExpress 是否进行自渲染(传入后设置激励视频尺寸) true
expressViewAcceptedSizeH 渲染视频高度 500
expressViewAcceptedSizeW 渲染视频宽度 500
userID 必传参数,表来标识应用侧唯一用户;若非服务器回调模式或不需 sdk 透传 null
mediaExtra 用户透传的信息,可不传 media_extra

激励视频回调监听

在合适的位置注册你的监听,保证用户看完广告时接收到我给你的回调信息,并做下一步处理

Pangolin.pangolinResponseEventHandler.listen((value)
    {
      if(value is Pangolin.RewardResponse)
        {
          print("激励视频回调:${value.rewardVerify}");
          print("激励视频回调:${value.rewardName}");
          print("激励视频回调:${value.rewardAmount}");
        }
      else
        {
          print("回调类型不符合");
        }
    });

参数说明

参数 描述 默认值
rewardVerify 验证奖励有效性,即用户是否完成观看 /
rewardName 你在穿山甲填写的奖励名称 /
rewardAmount 你在穿山甲填写的奖励数量 /
  • 激励视频关闭监听:如果你收到了一个回调,并且rewardName == rewardVideo Close说明是一个激励视频关闭的回调,详见 example

激励视频的具体使用参见项目目录下 Example

加载 Banner 广告

     await Pangolin.loadBannerAd(
        mCodeId: "Your CodeId",
        supportDeepLink: true,
        expressViewWidth: Your expressViewWidth,
        expressViewHeight: Your expressViewHeight,
        isCarousel: true,
        interval: 40);

参数说明

参数 描述 默认值
mCodeId 在穿山甲平台注册的自己的广告位 id null
supportDeepLink 是否支持横屏 true
expressViewWidth banner 长度 null
expressViewWidth banner 高度 null
isCarousel 是否开启轮播 true
interval 轮播间隔(30 ~ 120s) null
topMargin banner 到顶部距离(仅 Android) 0

以上参数在创建代码位时都可以进行自定义设置,请确保在代码中填写的实际值和创建代码位时一致。

手动关闭 Banner 广告(Android)

Pangolin.removeBannerAd();

该方法提供给 Android 用户,在关闭界面时手动调用,关闭 Banner 广告

加载插屏广告(iOS)

    await Pangolin.loadInterstitialAd(
        mCodeId: "Your CodeId",
        expressViewWidth: 300,
        expressViewHeight: 300
    );

参数说明

参数 描述 默认值
mCodeId 在穿山甲平台注册的自己的广告位 id null
expressViewWidth 插屏长度 null
expressViewWidth 插屏高度 null

插屏广告的长宽可以自己设定,但是长宽比必须和自己代码位设定的一致,例如设置了 1:1 的长宽比可以设置: 长度 300+宽度 300 或 长度 600+宽度 600。

加入/贡献

目前项目已经逐渐完善,但是还有许多特性需要给的协助,如果你对项目有兴趣并且对开源有兴趣和信心,可以通过 README 底部的联系方式联系我,并在备注中说明,我会优先回复你的信息 🤪。目前剩余的广告(按目前 issue 中提到的人数统计优先级):

  • 信息流广告

方法

  • fork 项目代码
  • 开发/测试功能
  • 提出 pr

测试说明

穿山甲的测试个人建议在真机进行测试,我本人在模拟器上会遇到各种疑难杂症,虽然插件和穿山甲 SDK 的报错都能看到,但是直接上真机很多报错会减少,这个由使用者自行决定,建议仅供参考

感谢

感谢各位 Flutter 开发者的支持和帮助,如果本插件能为你在开发过程中省下一点点的时间和精力算是达到了我开发插件的初衷。如果喜欢,欢迎点个 🌟 持续关注。如果项目关注度高,会继续开发 SDK 的剩余部分和分享一些开发插件的心得和踩坑经验。

闲谈

1.这个项目其实初衷是帮助各位了解 Flutter 插件的使用,同时方便各位的开发工作。到后来就演变成了我必须要更新。某些来联系我的人甚至态度恶劣和不屑,十分让人寒心,开源社区的环境应该由大家来维护,应该给予开源者最起码的尊重。
2.工作繁忙,加我好友可能需要等待几个小时到一天不等,感谢各位谅解 🤣
3.感谢各位一直以来的支持 特别是我的好友瑞宇 ,各位期待的 信息流、banner 都有小伙伴自告奋勇的在制作了,后续会和我 pr,也欢迎各位加入这个项目。

个人联系方式

  • QQ:964997115
  • Wechat:tys19971122
  • 请各位不要在周末的时候尝试加好友,周末要么在加班要么在各地旅游 ✈️ 。好友请求很容易过期...

pangolin's People

Contributors

afeidaren avatar daixianceng avatar kkkkkkkkkkkkkkeee avatar tongyangsheng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

pangolin's Issues

ios build出现错误

执行 pod install 没问题
flutter run
或者在xcode里面build的时候,就报下面的错误

Ld /Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Products/Debug-iphoneos/pangolin/pangolin.framework/pangolin normal arm64 (in target 'pangolin' from project 'Pods')
cd /Users/name/Documents/work/app/ios/Pods
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -target arm64-apple-ios9.0 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.5.sdk -L/Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Products/Debug-iphoneos/pangolin -F/Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Products/Debug-iphoneos/pangolin -F/Users/name/Documents/work/app/ios/Pods/../Flutter -F/Users/name/Documents/work/app/ios/Pods/Bytedance-UnionAD/Bytedance-UnionAd/Frameworks -filelist /Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/pangolin.build/Objects-normal/arm64/pangolin.LinkFileList -install_name @rpath/pangolin.framework/pangolin -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/pangolin.build/Objects-normal/arm64/pangolin_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -fobjc-arc -fobjc-link-runtime -framework AVFoundation -framework Accelerate -framework AdSupport -framework CoreLocation -framework CoreMedia -framework CoreMotion -framework CoreTelephony -framework Flutter -framework MapKit -framework MediaPlayer -framework MobileCoreServices -framework StoreKit -framework SystemConfiguration -framework UIKit -framework WebKit -framework Foundation -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Intermediates.noindex/Pods.build/Debug-iphoneos/pangolin.build/Objects-normal/arm64/pangolin_dependency_info.dat -o /Users/name/Library/Developer/Xcode/DerivedData/Runner-hgtradzyhdbyjrgskseiaroegqwf/Build/Products/Debug-iphoneos/pangolin/pangolin.framework/pangolin

Undefined symbols for architecture arm64:
"_kBU_voice_silent", referenced from:
-[BUNativeExpressRewardedVideoAdViewController silentButton] in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
-[BUNativeExpressRewardedVideoAdViewController silentButtonTapped:] in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
-[BURewardedVideoAdViewController silentButtonTapped:] in BUAdSDK(BURewardedVideoAdViewController.o)
-[BURewardedVideoAdViewController silentButton] in BUAdSDK(BURewardedVideoAdViewController.o)
-[BURewardedVideoTopBarView updateSilentButtonStatus:] in BUAdSDK(BURewardedVideoTopBarView.o)
"_kBU_nextCell", referenced from:
-[BUDislikeTableViewCell initWithStyle:reuseIdentifier:] in BUAdSDK(BUDislikeTableViewCell.o)
"OBJC_CLASS$_BUThreadSafeDictionary", referenced from:
objc-class-ref in BUAdSDK(BUAdViewWitnessChecker.o)
objc-class-ref in BUAdSDK(BUDynamicLayoutService.o)
objc-class-ref in BUAdSDK(BUUSettingService.o)
objc-class-ref in BUAdSDK(BUTrackerProxy.o)
"OBJC_CLASS$_BUWebViewProgressView", referenced from:
objc-class-ref in BUAdSDK(BUWebViewController.o)
"OBJC_METACLASS$_BUWKWebView", referenced from:
OBJC_METACLASS$_BUWKWebViewClient in BUAdSDK(BUWKWebViewClient.o)
(maybe you meant: OBJC_METACLASS$_BUWKWebViewClient)
"_kBU_logoAd_oversea", referenced from:
-[BUExpressCoverView logoImageView] in BUAdSDK(BUExpressCoverView.o)
"OBJC_CLASS$_BUWebViewApplication", referenced from:
objc-class-ref in BUAdSDK(BURewardedVideoWebViewController.o)
objc-class-ref in BUAdSDK(BUAppStoreDisplayInAppViewController.o)
objc-class-ref in BUAdSDK(BUWebViewController.o)
"OBJC_CLASS$_BUCocoaSecurity", referenced from:
objc-class-ref in BUAdSDK(BUNetworkSecurity.o)
"OBJC_CLASS$_BUCocoaSecurityDecoder", referenced from:
objc-class-ref in BUAdSDK(BUNetworkSecurity.o)
"_kBU_fastBackward", referenced from:
-[BU_ZFPlayerControlView buzf_playerDraggedTime:totalTime:isForward:hasPreview:] in BUAdSDK(BU_ZFPlayerControlView.o)
"_kBUReachabilityChangedNotification", referenced from:
-[BUNativeExpressAdView addReachabilityNotification] in BUAdSDK(BUNativeExpressAdView.o)
___32-[BURewardedVideoPreloader init]_block_invoke in BUAdSDK(BURewardedVideoPreloader.o)
-[BUVideoAdView initWithMaterial:] in BUAdSDK(BUVideoAdView.o)
"OBJC_CLASS$_BUNetInfoHelper", referenced from:
objc-class-ref in BUAdSDK(BUAdEventTracker.o)
objc-class-ref in BUAdSDK(BUAppStoreManager.o)
objc-class-ref in BUAdSDK(BUDevice.o)
objc-class-ref in BUAdSDK(BUURLTracker.o)
objc-class-ref in BUAdSDK(BUNetworkRequest.o)
objc-class-ref in BUAdSDK(BUNativeExpressFeedVideoAdView.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloader.o)
...
"OBJC_CLASS$_BUDeviceHelper", referenced from:
objc-class-ref in BUAdSDK(BUAppStoreManager.o)
objc-class-ref in BUAdSDK(BUDevice.o)
objc-class-ref in BUAdSDK(BUUSettingService.o)
objc-class-ref in BUAdSDK(BUAPIClinet.o)
objc-class-ref in BUAdSDK(BUAppStorePreloadItem.o)
objc-class-ref in BUAdSDK(BURewardedVideoWebViewController.o)
objc-class-ref in BUAdSDK(BUTrackerProxy.o)
...
"OBJC_CLASS$_BU_SDWebImageManager", referenced from:
objc-class-ref in BUAdSDK(BUNativeExpressAdManager.o)
objc-class-ref in BUAdSDK(BUSplashPreloader.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloaderManager.o)
objc-class-ref in BUAdSDK(BUURLProtocol.o)
objc-class-ref in BUAdSDK(BUWKWebViewClient.o)
"OBJC_METACLASS$_BUBaseRequest", referenced from:
OBJC_METACLASS$_BUNetworkRequest in BUAdSDK(BUNetworkRequest.o)
"OBJC_CLASS$_BUFoundationAddress", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"OBJC_CLASS$_HMDBUToBAddressRange", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"_kBU_playableLoading", referenced from:
-[BUPurePlayableLoadingViewController viewDidLoad] in BUAdSDK(BUPurePlayableLoadingViewController.o)
"OBJC_CLASS$_EBAppLog", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"OBJC_CLASS$_EBAppLogConfig", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"_kBU_logoAd", referenced from:
-[BUExpressCoverView logoImageView] in BUAdSDK(BUExpressCoverView.o)
"OBJC_CLASS$_BUScreenHelper", referenced from:
objc-class-ref in BUAdSDK(BUAppStorePreloadItem.o)
objc-class-ref in BUAdSDK(BUTrackerProxy.o)
objc-class-ref in BUAdSDK(BU_ZFPlayerControlView.o)
"_kBU_fullClose", referenced from:
-[BUExpressCoverView buildBannerSmallView] in BUAdSDK(BUExpressCoverView.o)
-[BU_ZFPlayerControlView setOrientationPortraitConstraint] in BUAdSDK(BU_ZFPlayerControlView.o)
"_kBU_close", referenced from:
-[BUWebViewController creatNavigationItems] in BUAdSDK(BUWebViewController.o)
"OBJC_CLASS$_HMDBUToBCrashTrackerRestrict", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"OBJC_CLASS$_BURouter", referenced from:
objc-class-ref in BUAdSDK(BUAWebPageActionManager.o)
objc-class-ref in BUAdSDK(BUAdDeepLinkActionManager.o)
objc-class-ref in BUAdSDK(BUVideoAdActionManager.o)
"_BU_JSONObjectByRemovingKeysWithNullValues", referenced from:
___33-[BUUSettingService fetchSetting]_block_invoke.139 in BUAdSDK(BUUSettingService.o)
"OBJC_CLASS$_BUInfoHelper", referenced from:
objc-class-ref in BUAdSDK(BUTNCNetwork.o)
objc-class-ref in BUAdSDK(BUUSettingService.o)
objc-class-ref in BUAdSDK(BUByteFinder.o)
objc-class-ref in BUAdSDK(BUTrackerProxy.o)
objc-class-ref in BUAdSDK(BUApp.o)
"OBJC_CLASS$_BURuntimeUtil", referenced from:
objc-class-ref in BUAdSDK(BUWKWebViewClient.o)
"_kBU_endCardClose", referenced from:
-[BUNativeExpressRewardedVideoAdViewController closeButton] in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
-[BURewardedVideoAdViewController closeButton] in BUAdSDK(BURewardedVideoAdViewController.o)
-[BURewardedVideoWebViewController closeButton] in BUAdSDK(BURewardedVideoWebViewController.o)
"_kBU_dislike", referenced from:
-[BUExpressCoverView dislikeButton] in BUAdSDK(BUExpressCoverView.o)
"OBJC_CLASS$_BUReachability", referenced from:
objc-class-ref in BUAdSDK(BUNativeExpressFeedVideoAdView.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloader.o)
objc-class-ref in BUAdSDK(BUVideoAdView.o)
"OBJC_CLASS$_BUWKWebView", referenced from:
objc-class-ref in BUAdSDK(BUGDPRViewController.o)
OBJC_CLASS$_BUWKWebViewClient in BUAdSDK(BUWKWebViewClient.o)
(maybe you meant: OBJC_CLASS$_BUWKWebViewClient)
"OBJC_CLASS$_BUTimer", referenced from:
objc-class-ref in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
objc-class-ref in BUAdSDK(BURewardedVideoAdViewController.o)
objc-class-ref in BUAdSDK(BUNativeExpressAdView.o)
objc-class-ref in BUAdSDK(BUNativeExpressFeedVideoAdView.o)
objc-class-ref in BUAdSDK(BUNativeExpressRewardedVideoAdView.o)
objc-class-ref in BUAdSDK(BUNativeExpressSplashVideoAdView.o)
objc-class-ref in BUAdSDK(BURewardedVideoDisplayViewController.o)
...
"OBJC_CLASS$_BUGifImageView", referenced from:
objc-class-ref in BUAdSDK(BUSplashAdView.o)
"_BU_LOG_ENABLED", referenced from:
+[BUAdSDKManager setAppID:] in BUAdSDK(BUAdSDKManager.o)
+[BUAdSDKManager setLoglevel:] in BUAdSDK(BUAdSDKManager.o)
-[BUNativeExpressRewardedVideoAd initWithSlotID:rewardedVideoModel:] in BUAdSDK(BUNativeExpressRewardedVideoAd.o)
-[BUSplashAdView initWithSlotID:frame:] in BUAdSDK(BUSplashAdView.o)
___38-[BUSplashAdView updateViewWithModel:]_block_invoke in BUAdSDK(BUSplashAdView.o)
+[BUAdEventTracker trackWithTag:label:value:logExtra:extraDic:] in BUAdSDK(BUAdEventTracker.o)
+[BUCacheControl crashMessageSend:] in BUAdSDK(BUCacheControl.o)
...
"_kBU_GDPRBack", referenced from:
-[BUGDPRViewController buildupView] in BUAdSDK(BUGDPRViewController.o)
"OBJC_CLASS$_BUPersistenceOption", referenced from:
objc-class-ref in BUAdSDK(BUDynamicLayoutService.o)
objc-class-ref in BUAdSDK(BUSplashPreloader.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloaderManager.o)
"OBJC_CLASS$_BUThreadSafeMutableArray", referenced from:
objc-class-ref in BUAdSDK(BUDynamicLayoutService.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloader.o)
objc-class-ref in BUAdSDK(BUResourceLoader.o)
"OBJC_CLASS$_HMDBUToBCrashTracker", referenced from:
objc-class-ref in BUAdSDK(BUByteFinder.o)
"_kBU_fastForward", referenced from:
-[BU_ZFPlayerControlView buzf_playerDraggedTime:totalTime:isForward:hasPreview:] in BUAdSDK(BU_ZFPlayerControlView.o)
"_bu_safe_dispatch_async_main_queue", referenced from:
-[BUDynamicLayoutService updateTemplateURL:loadingStatus:] in BUAdSDK(BUDynamicLayoutService.o)
___54-[BUDynamicLayoutService saveNewTemplate:templateUrl:]_block_invoke_2 in BUAdSDK(BUDynamicLayoutService.o)
___66-[BUDynamicLayoutService fetchDynamicLayoutTemplateWithDCChanged:]_block_invoke_2 in BUAdSDK(BUDynamicLayoutService.o)
-[BUDynamicLayoutService fetchDynamicLayoutTemplateDataWithTempId:URL:md5:successGetTemplateData:] in BUAdSDK(BUDynamicLayoutService.o)
-[BUAPIClient fetchNativeAdsJsonWithAdSlot:reqType:slotParams:completionHandler:] in BUAdSDK(BUAPIClinet.o)
___81-[BUAPIClient fetchNativeAdsJsonWithAdSlot:reqType:slotParams:completionHandler:]_block_invoke_2 in BUAdSDK(BUAPIClinet.o)
___81-[BUAPIClient fetchNativeAdsJsonWithAdSlot:reqType:slotParams:completionHandler:]_block_invoke.293 in BUAdSDK(BUAPIClinet.o)
...
"OBJC_CLASS$_BUPersistence", referenced from:
objc-class-ref in BUAdSDK(BUDynamicLayoutService.o)
objc-class-ref in BUAdSDK(BUSplashPreloader.o)
objc-class-ref in BUAdSDK(BUURLTracker.o)
objc-class-ref in BUAdSDK(BURewardedVideoPreloaderManager.o)
objc-class-ref in BUAdSDK(BUTrackerStorage.o)
"_kBU_voice", referenced from:
-[BUNativeExpressRewardedVideoAdViewController silentButton] in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
-[BUNativeExpressRewardedVideoAdViewController silentButtonTapped:] in BUAdSDK(BUNativeExpressRewardedVideoAdViewController.o)
-[BURewardedVideoAdViewController silentButtonTapped:] in BUAdSDK(BURewardedVideoAdViewController.o)
-[BURewardedVideoAdViewController silentButton] in BUAdSDK(BURewardedVideoAdViewController.o)
-[BURewardedVideoTopBarView silentButton] in BUAdSDK(BURewardedVideoTopBarView.o)
-[BURewardedVideoTopBarView updateSilentButtonStatus:] in BUAdSDK(BURewardedVideoTopBarView.o)
"_BUSDKVersion", referenced from:
+[BUAdSDKManager setAppID:] in BUAdSDK(BUAdSDKManager.o)
+[BUAdSDKManager SDKVersion] in BUAdSDK(BUAdSDKManager.o)
-[BUNativeExpressRewardedVideoAd initWithSlotID:rewardedVideoModel:] in BUAdSDK(BUNativeExpressRewardedVideoAd.o)
-[BUSplashAdView initWithSlotID:frame:] in BUAdSDK(BUSplashAdView.o)
___38-[BUSplashAdView updateViewWithModel:]_block_invoke in BUAdSDK(BUSplashAdView.o)
+[BUAdEventTracker trackWithTag:label:value:logExtra:extraDic:] in BUAdSDK(BUAdEventTracker.o)
+[BUCacheControl crashMessageSend:] in BUAdSDK(BUCacheControl.o)
...
"OBJC_CLASS$_BUBaseRequest", referenced from:
OBJC_CLASS$_BUNetworkRequest in BUAdSDK(BUNetworkRequest.o)
"OBJC_CLASS$_BUUIResponderHelper", referenced from:
objc-class-ref in BUAdSDK(BUSplashAdView.o)
objc-class-ref in BUAdSDK(BUNativeAd.o)
objc-class-ref in BUAdSDK(BUNativeExpressAdView.o)
objc-class-ref in BUAdSDK(BUViewTrackerHelper.o)
objc-class-ref in BUAdSDK(BU_ZFPlayerView.o)
"OBJC_CLASS$_BUTLocationService", referenced from:
objc-class-ref in BUAdSDK(BUAdSDKManager.o)
objc-class-ref in BUAdSDK(BUUSettingService.o)
objc-class-ref in BUAdSDK(BURewardedVideoRequestModel.o)
objc-class-ref in BUAdSDK(BUApp.o)
objc-class-ref in BUAdSDK(BUDislikeRequestManager.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

ios build失败

Failed to build iOS app
Error output from Xcode build:

2020-04-17 17:08:27.710 xcodebuild[34506:6310258] DTDeviceKit: deviceType from dddaf37ad2da4c140fe193912b6502cfdb09ce3c was NULL
2020-04-17 17:08:27.838 xcodebuild[34506:6310257] DTDeviceKit: deviceType from dddaf37ad2da4c140fe193912b6502cfdb09ce3c was NULL
** BUILD FAILED **

Xcode's output:

In file included from /Users/yanzh/Downloads/Pangolin-master/ios/Classes/PangolinPlugin.m:1:
/Users/yanzh/Downloads/Pangolin-master/ios/Classes/PangolinPlugin.h:5:34: error: no type or protocol named 'BUDExampleViewModel'
@Property (nonatomic, strong) id viewModel;
^
/Users/yanzh/Downloads/Pangolin-master/ios/Classes/PangolinPlugin.m:40:29: warning: assigning to 'id _Nullable' from incompatible type 'PangolinPlugin *const __strong'
splashView.delegate = self;
^ ~~~~
1 warning and 1 error generated.
note: Using new build system
note: Building targets in parallel
note: Planning build
note: Constructing build description
warning: MobileCoreServices has been renamed. Use CoreServices instead. (in target 'Runner' from project 'Runner')

0.0.7版本

pod设置升级

收到如下官方信息

苹果预计将更新iOS 14.5版本,因iOS功能调整,届时将会对ios广告收入造成重大影响。为保障开发者的收益,我们已发布了专门适配iOS 14.5版本的SDK(3423以上的版本)。国内流量开发者如使用pods更新,请使用pod 'Ads-CN'。请务必不晚于2月26日之前将SDK更新至3423及以上版本,避免您的收入遭受严重损失!!!

插件中的pod设置应该也需要升级?
或者请问如何手动使用pod 'Ads-CN'?

谢谢

开屏广告是否支持拉取但是不展示?

按现在的表现, 比如我把网断了. 然后加载开屏广告, 这时候会先弹到原生界面, 然后又弹回到flutter.

类似的, 如果开屏广告加载失败, 也会这样表现吧?

是不是可以拉取完成不默认展示, 通过开放几个回调来决定弹还是不弹?
我看原生sdk是有这样的回调的

插屏广告找不到方法

Unhandled Exception: MissingPluginException(No implementation found for method loadInterstitialAd on channel com.tongyangsheng.pangolin)

Android激励视频中点击下载下载失败

激励视频中点击下载下载失败
Pangolin v0.2.7
Flutter 1.22.5 stable
Android
必现

测试手机:华为Mate30

点击激励视频中的下载游戏
debug模式下会一直弹出 下载失败,请点击下载区域重新下载

可能关联的报错:
/LibEventLogger(22182): tag embeded_ad
E/LibEventLogger(22182): label ttdownloader_unity
D/DBMultiProviderImpl(22182): query: content://com.jikipedia.app.TTMultiProvider/t_db/ttopensdk.db/template_diff_new
D/DBMultiProviderImpl(22182): update: content://com.jikipedia.app.TTMultiProvider/t_db/ttopensdk.db/template_diff_new
D/DBMultiProviderImpl(22182): query: content://com.jikipedia.app.TTMultiProvider/t_db/ttopensdk.db/template_diff_new
D/AdEventProviderImpl(22182): dispatch event
D/AdEventProviderImpl(22182): dispatch FUN_AD_EVENT_DISPATCH
D/TmplDiffManager(22182): end doCheckAndDeleteTask maxTplCnt,local size500, 目前存储的模版的个数 1
V/DelegateRunnable(22182): run: pool = io waitTime = 0 taskCost = 12 name= saveTemplate
I/AdEvent (22182): tag: rewarded_video_landingpagelabel: ttdownloader_unity 1690912406903831
V/DelegateRunnable(22182): run: pool = io waitTime = 0 taskCost = 19 name= LogTask
W/System.err(22182): android.content.pm.PackageManager$NameNotFoundException: com.oppo.filemanager
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfoAsUser(ApplicationPackageManager.java:201)
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:170)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.g.b(AppUtils.java:117)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.b(AhUtils.java:696)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:674)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:489)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:153)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:100)
W/System.err(22182): at com.ss.android.downloadlib.addownload.h.a(DownloadHelper.java:478)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.p(CommonDownloadHandler.java:712)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.g(CommonDownloadHandler.java:81)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f$5.a(CommonDownloadHandler.java:702)
W/System.err(22182): at com.ss.android.downloadlib.addownload.e.a(CleanSpaceHelper.java:73)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.o(CommonDownloadHandler.java:696)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:690)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:600)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:178)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:251)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d$3.a(DMLibManager.java:521)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.s(CommonDownloadHandler.java:887)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:593)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:244)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.s(DMLibManager.java:510)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.e(DMLibManager.java:463)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.x(DMLibManager.java:1045)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.w(DMLibManager.java:1027)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.i(DMLibManager.java:803)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.z(DMLibManager.java:1286)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.g(DMLibManager.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.a.a.a(ClickCreativeListener.java:102)
W/System.err(22182): at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity$6.a(TTRewardExpressVideoActivity.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.a(NativeExpressView.java:787)
W/System.err(22182): at com.bytedance.sdk.openadsdk.component.reward.view.FullRewardExpressView.a(FullRewardExpressView.java:203)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.k(TTAndroidObject.java:994)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.c(TTAndroidObject.java:85)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w$4.run(TTAndroidObject.java:796)
W/System.err(22182): at android.os.Handler.handleCallback(Handler.java:900)
W/System.err(22182): at android.os.Handler.dispatchMessage(Handler.java:103)
W/System.err(22182): at android.os.Looper.loop(Looper.java:219)
W/System.err(22182): at android.app.ActivityThread.main(ActivityThread.java:8387)
/System.err(22182): at java.lang.reflect.Method.invoke(Native Method)
W/System.err(22182): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
W/System.err(22182): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1055)
W/System.err(22182): android.content.pm.PackageManager$NameNotFoundException: com.coloros.filemanager
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfoAsUser(ApplicationPackageManager.java:201)
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:170)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.g.b(AppUtils.java:117)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.b(AhUtils.java:696)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:674)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:489)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:153)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:100)
W/System.err(22182): at com.ss.android.downloadlib.addownload.h.a(DownloadHelper.java:478)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.p(CommonDownloadHandler.java:712)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.g(CommonDownloadHandler.java:81)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f$5.a(CommonDownloadHandler.java:702)
W/System.err(22182): at com.ss.android.downloadlib.addownload.e.a(CleanSpaceHelper.java:73)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.o(CommonDownloadHandler.java:696)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:690)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:600)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:178)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:251)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d$3.a(DMLibManager.java:521)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.s(CommonDownloadHandler.java:887)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:593)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:244)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.s(DMLibManager.java:510)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.e(DMLibManager.java:463)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.x(DMLibManager.java:1045)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.w(DMLibManager.java:1027)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.i(DMLibManager.java:803)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.z(DMLibManager.java:1286)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.g(DMLibManager.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.a.a.a(ClickCreativeListener.java:102)
W/System.err(22182): at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity$6.a(TTRewardExpressVideoActivity.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.a(NativeExpressView.java:787)
W/System.err(22182): at com.bytedance.sdk.openadsdk.component.reward.view.FullRewardExpressView.a(FullRewardExpressView.java:203)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.k(TTAndroidObject.java:994)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.c(TTAndroidObject.java:85)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w$4.run(TTAndroidObject.java:796)
W/System.err(22182): at android.os.Handler.handleCallback(Handler.java:900)
W/System.err(22182): at android.os.Handler.dispatchMessage(Handler.java:103)
W/System.err(22182): at android.os.Looper.loop(Looper.java:219)
W/System.err(22182): at android.app.ActivityThread.main(ActivityThread.java:8387)
W/System.err(22182): at java.lang.reflect.Method.invoke(Native Method)
W/System.err(22182): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
W/System.err(22182): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1055)
W/System.err(22182): android.content.pm.PackageManager$NameNotFoundException: com.android.filemanager
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfoAsUser(ApplicationPackageManager.java:201)
W/System.err(22182): at android.app.ApplicationPackageManager.getPackageInfo(ApplicationPackageManager.java:170)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.g.b(AppUtils.java:117)
/System.err(22182): at com.ss.android.socialbase.appdownloader.b.b(AhUtils.java:696)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:674)
W/System.err(22182): at com.ss.android.socialbase.appdownloader.b.a(AhUtils.java:489)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:153)
W/System.err(22182): at com.ss.android.downloadlib.addownload.i.a(DownloadInsideHelper.java:100)
W/System.err(22182): at com.ss.android.downloadlib.addownload.h.a(DownloadHelper.java:478)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.p(CommonDownloadHandler.java:712)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.g(CommonDownloadHandler.java:81)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f$5.a(CommonDownloadHandler.java:702)
W/System.err(22182): at com.ss.android.downloadlib.addownload.e.a(CleanSpaceHelper.java:73)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.o(CommonDownloadHandler.java:696)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:690)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:600)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:178)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:251)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d$3.a(DMLibManager.java:521)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.s(CommonDownloadHandler.java:887)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.f(CommonDownloadHandler.java:593)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.e(CommonDownloadHandler.java:488)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.c(CommonDownloadHandler.java:454)
W/System.err(22182): at com.ss.android.downloadlib.addownload.f.b(CommonDownloadHandler.java:357)
W/System.err(22182): at com.ss.android.downloadlib.f.a(DownloadDispatcher.java:195)
W/System.err(22182): at com.ss.android.downloadlib.g.a(TTDownloader.java:244)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.s(DMLibManager.java:510)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.e(DMLibManager.java:463)
/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.x(DMLibManager.java:1045)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.w(DMLibManager.java:1027)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.i(DMLibManager.java:803)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.z(DMLibManager.java:1286)
W/System.err(22182): at com.bytedance.sdk.openadsdk.downloadnew.a.d.g(DMLibManager.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.a.a.a(ClickCreativeListener.java:102)
W/System.err(22182): at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity$6.a(TTRewardExpressVideoActivity.java:594)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.a(NativeExpressView.java:787)
W/System.err(22182): at com.bytedance.sdk.openadsdk.component.reward.view.FullRewardExpressView.a(FullRewardExpressView.java:203)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.k(TTAndroidObject.java:994)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w.c(TTAndroidObject.java:85)
W/System.err(22182): at com.bytedance.sdk.openadsdk.core.w$4.run(TTAndroidObject.java:796)
W/System.err(22182): at android.os.Handler.handleCallback(Handler.java:900)
W/System.err(22182): at android.os.Handler.dispatchMessage(Handler.java:103)
W/System.err(22182): at android.os.Looper.loop(Looper.java:219)
W/System.err(22182): at android.app.ActivityThread.main(ActivityThread.java:8387)
W/System.err(22182): at java.lang.reflect.Method.invoke(Native Method)
W/System.err(22182): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
W/System.err(22182): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1055)
D/DMLibManager(22182): changeDownloadStatus, the current status is2: 2
I/CZL_META(LITE)(22182):
I/CZL_META(LITE)(22182): [22182] meta(303)
D/FullRewardExpressView(22182): onGetCurrentPlayTime

ios pod install 错误

在xcode里面按照下面的
https://partner.oceanengine.com/union/media/union/download/detail?id=16&docId=5de8d570b1afac00129330c5&osType=ios
配置了“Xcode编译选项设置”

然后在pubspec.yaml 里面添加了:
pangolin: ^0.1.1

然后在 项目的ios目录执行:
pod install

就报下面的错误:

`

[!] The 'Pods-Runner' target has transitive dependencies that include statically linked binaries: (/Users/name/Documents/work/app/ios/Pods/Bytedance-UnionAD/Bytedance-UnionAd/Frameworks/BUAdSDK.framework and
/Users/name/Documents/work/app/ios/Pods/Bytedance-UnionAD/Bytedance-UnionAd/Frameworks/BUFoundation.framework)

/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:84:in `block (2 levels) in verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:74:in `each_key'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:74:in `block in verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:73:in `each'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:73:in `verify_no_static_framework_transitive_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer/xcode/target_validator.rb:38:in `validate!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer.rb:590:in `validate_targets'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/installer.rb:158:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.9.2/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'

`

翻了一下,有过一个类似的issues 不过没有结论https://github.com/OpenFlutter/Pangolin/issues/11
新开一个,把情况描述一下

关于appId

穿山甲注册的时候,有选平台Android, ios
所以在穿山甲注册了两个应用,同一个app,两个平台

在Pangolin 初始化应用的时候要设置appId

应该根据平台判断,设置不同的appId, 还是随便设置1个就可以。

后面的广告位代码也有同样的问题

debug 参数失效

debug 参数修改不起作用,测试环境:debug模式和release模式,穿山甲测试模式,RewardAd
dart里面设置了false,还是会弹窗各阶段信息

0.1.1

即使改成本地插件,修改里面内容,也是不生效。。。

是我改得地方改错了,改了RewardVideoActivity。。。。

ios中如何关闭banner广告

我看到文档中有android的方式关闭banner广告。ios和 。目前ios切换界面的banner的时候,banner不会消失。

Is the SDK version old?

I ran the code for "example".

Error occurs when executing _loadRewardAd.

【nativeExpress】两种情况:1. SDK版本低;使用的sdk版本过低,还不支持个性化模板渲染功能。解决办法:升级到平台最新版本sdk。2. 接口使用错误;创建的代码位类型是模板渲染/非模板渲染,但是请求方法是非模板渲染/模板渲染的方法。解决办法:使用模板渲染的方法去请求模板渲染类型或者使用非模板渲染的方法去请求非模板类型的广告,如果代码位在平台上是模板渲染,可以参考文档中个性化模板XX广告的部分,demo中参考带有express部分的代码。如果代码位不是模板渲染,则不要调用含有express字样的接口。参考文档:https://partner.oceanengine.com/doc?id=5dd0fe716b181e00112e3eb8

Is this currently not working?

播放完视频广告后报错,非常多次数没有计算收益

每次播放完视频激励广告都报错,经过测试,非常多次播放没有计算到收益。

使用插件版本:0.2.3

D/EgretLoader(17840): EgretLoader(Context context)
D/EgretLoader(17840): The context is not activity
W/cr_AwContents(17840): Application attempted to call on a destroyed WebView
W/cr_AwContents(17840): java.lang.Throwable
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.f(PG:379)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.a(PG:353)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.b(PG:439)
W/cr_AwContents(17840): 	at com.android.webview.chromium.WebViewChromium.loadUrl(PG:251)
W/cr_AwContents(17840): 	at android.webkit.WebView.loadUrl(WebView.java:720)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.SSWebView.loadUrl(SSWebView.java:93)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.d.a(WebViewPool.java:131)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.q(NativeExpressView.java:622)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.onDetachedFromWindow(NativeExpressView.java:693)
W/cr_AwContents(17840): 	at android.view.View.dispatchDetachedFromWindow(View.java:18437)
W/cr_AwContents(17840): 	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3779)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5363)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5334)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeView(ViewGroup.java:5265)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.k(NativeExpressView.java:665)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity.onDestroy(TTRewardExpressVideoActivity.java:485)
W/cr_AwContents(17840): 	at android.app.Activity.performDestroy(Activity.java:7532)
W/cr_AwContents(17840): 	at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1307)
W/cr_AwContents(17840): 	at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4562)
W/cr_AwContents(17840): 	at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4596)
W/cr_AwContents(17840): 	at android.app.servertransaction.DestroyActivityItem.execute(DestroyActivityItem.java:39)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
W/cr_AwContents(17840): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1847)
W/cr_AwContents(17840): 	at android.os.Handler.dispatchMessage(Handler.java:106)
W/cr_AwContents(17840): 	at android.os.Looper.loop(Looper.java:207)
W/cr_AwContents(17840): 	at android.app.ActivityThread.main(ActivityThread.java:6899)
W/cr_AwContents(17840): 	at java.lang.reflect.Method.invoke(Native Method)
W/cr_AwContents(17840): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
W/cr_AwContents(17840): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
W/cr_AwContents(17840): Application attempted to call on a destroyed WebView
W/cr_AwContents(17840): java.lang.Throwable
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.f(PG:379)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.a(PG:353)
W/cr_AwContents(17840): 	at com.android.webview.chromium.WebViewChromium.stopLoading(PG:313)
W/cr_AwContents(17840): 	at android.webkit.WebView.stopLoading(WebView.java:899)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.SSWebView.stopLoading(SSWebView.java:130)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.d.a(WebViewPool.java:132)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.q(NativeExpressView.java:622)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.onDetachedFromWindow(NativeExpressView.java:693)
W/cr_AwContents(17840): 	at android.view.View.dispatchDetachedFromWindow(View.java:18437)
W/cr_AwContents(17840): 	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3779)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5363)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5334)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeView(ViewGroup.java:5265)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.k(NativeExpressView.java:665)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity.onDestroy(TTRewardExpressVideoActivity.java:485)
W/cr_AwContents(17840): 	at android.app.Activity.performDestroy(Activity.java:7532)
W/cr_AwContents(17840): 	at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1307)
W/cr_AwContents(17840): 	at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4562)
W/cr_AwContents(17840): 	at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4596)
W/cr_AwContents(17840): 	at android.app.servertransaction.DestroyActivityItem.execute(DestroyActivityItem.java:39)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
W/cr_AwContents(17840): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1847)
W/cr_AwContents(17840): 	at android.os.Handler.dispatchMessage(Handler.java:106)
W/cr_AwContents(17840): 	at android.os.Looper.loop(Looper.java:207)
W/cr_AwContents(17840): 	at android.app.ActivityThread.main(ActivityThread.java:6899)
W/cr_AwContents(17840): 	at java.lang.reflect.Method.invoke(Native Method)
W/cr_AwContents(17840): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
W/cr_AwContents(17840): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
W/cr_AwContents(17840): Application attempted to call on a destroyed WebView
W/cr_AwContents(17840): java.lang.Throwable
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.f(PG:379)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.a(PG:353)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.b(PG:644)
W/cr_AwContents(17840): 	at com.android.webview.chromium.WebViewChromium.clearCache(PG:607)
W/cr_AwContents(17840): 	at android.webkit.WebView.clearCache(WebView.java:1393)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.SSWebView.clearCache(SSWebView.java:241)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.d.a(WebViewPool.java:135)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.q(NativeExpressView.java:622)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.onDetachedFromWindow(NativeExpressView.java:693)
W/cr_AwContents(17840): 	at android.view.View.dispatchDetachedFromWindow(View.java:18437)
W/cr_AwContents(17840): 	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3779)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5363)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5334)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeView(ViewGroup.java:5265)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.k(NativeExpressView.java:665)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity.onDestroy(TTRewardExpressVideoActivity.java:485)
W/cr_AwContents(17840): 	at android.app.Activity.performDestroy(Activity.java:7532)
W/cr_AwContents(17840): 	at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1307)
W/cr_AwContents(17840): 	at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4562)
W/cr_AwContents(17840): 	at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4596)
W/cr_AwContents(17840): 	at android.app.servertransaction.DestroyActivityItem.execute(DestroyActivityItem.java:39)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
W/cr_AwContents(17840): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1847)
W/cr_AwContents(17840): 	at android.os.Handler.dispatchMessage(Handler.java:106)
W/cr_AwContents(17840): 	at android.os.Looper.loop(Looper.java:207)
W/cr_AwContents(17840): 	at android.app.ActivityThread.main(ActivityThread.java:6899)
W/cr_AwContents(17840): 	at java.lang.reflect.Method.invoke(Native Method)
W/cr_AwContents(17840): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
W/cr_AwContents(17840): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
W/cr_AwContents(17840): Application attempted to call on a destroyed WebView
W/cr_AwContents(17840): java.lang.Throwable
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.f(PG:379)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.a(PG:353)
W/cr_AwContents(17840): 	at com.android.webview.chromium.WebViewChromium.clearHistory(PG:624)
W/cr_AwContents(17840): 	at android.webkit.WebView.clearHistory(WebView.java:1412)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.SSWebView.clearHistory(SSWebView.java:257)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.widget.webview.d.a(WebViewPool.java:136)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.q(NativeExpressView.java:622)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.onDetachedFromWindow(NativeExpressView.java:693)
W/cr_AwContents(17840): 	at android.view.View.dispatchDetachedFromWindow(View.java:18437)
W/cr_AwContents(17840): 	at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:3779)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5363)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5334)
W/cr_AwContents(17840): 	at android.view.ViewGroup.removeView(ViewGroup.java:5265)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.core.nativeexpress.NativeExpressView.k(NativeExpressView.java:665)
W/cr_AwContents(17840): 	at com.bytedance.sdk.openadsdk.activity.base.TTRewardExpressVideoActivity.onDestroy(TTRewardExpressVideoActivity.java:485)
W/cr_AwContents(17840): 	at android.app.Activity.performDestroy(Activity.java:7532)
W/cr_AwContents(17840): 	at android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1307)
W/cr_AwContents(17840): 	at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:4562)
W/cr_AwContents(17840): 	at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:4596)
W/cr_AwContents(17840): 	at android.app.servertransaction.DestroyActivityItem.execute(DestroyActivityItem.java:39)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
W/cr_AwContents(17840): 	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
W/cr_AwContents(17840): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1847)
W/cr_AwContents(17840): 	at android.os.Handler.dispatchMessage(Handler.java:106)
W/cr_AwContents(17840): 	at android.os.Looper.loop(Looper.java:207)
W/cr_AwContents(17840): 	at android.app.ActivityThread.main(ActivityThread.java:6899)
W/cr_AwContents(17840): 	at java.lang.reflect.Method.invoke(Native Method)
W/cr_AwContents(17840): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
W/cr_AwContents(17840): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
E/BufferQueueProducer(17840): [SurfaceTexture-0-17840-4] dequeueBuffer: BufferQueue has been abandoned
W/cr_AwContents(17840): Application attempted to call on a destroyed WebView
W/cr_AwContents(17840): java.lang.Throwable
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.f(PG:379)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.a(PG:353)
W/cr_AwContents(17840): 	at org.chromium.android_webview.AwContents.r(PG:660)
W/cr_AwContents(17840): 	at Bb.loadingStateChanged(PG:139)
W/cr_AwContents(17840): 	at android.os.MessageQueue.nativePollOnce(Native Method)
W/cr_AwContents(17840): 	at android.os.MessageQueue.next(MessageQueue.java:332)
W/cr_AwContents(17840): 	at android.os.Looper.loop(Looper.java:168)
W/cr_AwContents(17840): 	at android.app.ActivityThread.main(ActivityThread.java:6899)
W/cr_AwContents(17840): 	at java.lang.reflect.Method.invoke(Native Method)
W/cr_AwContents(17840): 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
W/cr_AwContents(17840): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)

flutter环境:

q1deMacBook-Pro:~ q1$ flutter doctor -v
[✓] Flutter (Channel stable, 1.20.2, on macOS 11.0.1 20B50, locale zh-Hans-CN)
    • Flutter version 1.20.2 at /Users/q1/flutter
    • Framework revision bbfbf1770c (4 months ago), 2020-08-13 08:33:09 -0700
    • Engine revision 9d5b21729f
    • Dart version 2.9.1
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

 
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/q1/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • ANDROID_HOME = /Users/q1/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.2, Build version 12B45b
    • CocoaPods version 1.10.0

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 50.0.1
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[!] IntelliJ IDEA Community Edition (version 2020.2.3)
    • IntelliJ at /Applications/Applications/IntelliJ IDEA CE.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.dev/intellij-setup/#installing-the-plugins

[!] IntelliJ IDEA Community Edition (version 2020.2.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.dev/intellij-setup/#installing-the-plugins

[✓] VS Code (version 1.52.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.16.0

[✓] Connected device (2 available)
    • Mi9 Pro 5G (mobile)        • 488d005c                             •
      android-arm64 • Android 9 (API 28)
    • iPhone 12 Pro Max (mobile) • A595C595-65CC-443B-851D-F47E352AE4AE • ios
      • com.apple.CoreSimulator.SimRuntime.iOS-14-2 (simulator)

! Doctor found issues in 2 categories.

广告覆盖问题

使用banner在一个界面显示后,pageview 切换时 在另外一个界面还是会显示

是否是每次页面销毁是主动去关闭banner广告

android 激励视频,关闭debug 没回调

作者代码写错了,RawardVideo 里面onAdClose 方法错误
正确写法在一下,就是修改了debug方法结尾的括号位置
@OverRide
public void onAdClose() {
if (debug)
{
TToast.show(context, "rewardVideoAd close");
}
Map<String,Object> rewardVideoCallBack = new HashMap<>();
rewardVideoCallBack.put("rewardVerify",false);
rewardVideoCallBack.put("rewardAmount", 0);
rewardVideoCallBack.put("rewardName","rewardVideo Close");
_channel.invokeMethod("onRewardResponse",rewardVideoCallBack);
}

release模式下所有功能失效的问题

debug模式下所有流程 都可print 出来 接口全部调用正常
release模式下后 全部失效
已根据前issues 配置
插件debug模式为false
在main 函数处调用
不管不false 还是true 都看不到任何反应

ios 激励视频调用没反应

pangolin最新版测试的
2020-11-27 14:57:17.026898+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【webViewPool】BUWebViewOwner: memory dealloc:0x2829667c0
2020-11-27 14:57:17.033592+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【renderControl】renderControlFlow 请求的渲染方式:模板渲染
2020-11-27 14:57:17.033745+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【renderControl】------------------我是分割线------------------
2020-11-27 14:57:17.033825+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【renderControl】广告素材请求的时候,需要上传的renderType:模板渲染
2020-11-27 14:57:17.048686+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【BUFoundation】192.168.2.110
2020-11-27 14:57:17.048997+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】--------------------slotId(945642973)开始---------------
2020-11-27 14:57:17.049113+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[slot与子模板id对应关系] 获取slotId(945642973)对应的子模板信息
2020-11-27 14:57:17.049338+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[slot与子模板id对应关系] slotId:945642973, templateDataIds(query):{id=89;md5=e202ebb7ea77ac765aa7d0b25aa5ca84;}
2020-11-27 14:57:17.051075+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】Sign begin, param
2020-11-27 14:57:17.051271+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】BUSecGuardManager Init
2020-11-27 14:57:17.051481+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】Start bodyEncry
2020-11-27 14:57:17.051775+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】SGM exists
2020-11-27 14:57:17.052441+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】SGM init
2020-11-27 14:57:17.052554+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】SGM testMsgLog
2020-11-27 14:57:17.053449+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】SGM bodyEncry
2020-11-27 14:57:17.053589+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】BUSecGuardManager response bodyEnc
2020-11-27 14:57:17.053759+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【other】add Sign
2020-11-27 14:57:17.055158+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【BUFoundation】【BytedanceUnion】Add request: BUGetADSRequest
2020-11-27 14:57:17.067547+0800 Runner[699:120614] flutter: value=true
2020-11-27 14:57:17.377559+0800 Runner[699:120783] 【BytedanceUnion V3.3.1.5】-【BUFoundation】Finished Request: BUGetADSRequest
2020-11-27 14:57:17.382615+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【rewardedVideo】video ad material loaded successfully
2020-11-27 14:57:17.383084+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【nativeExpress】[加载数据] 数据格式有问题
2020-11-27 14:57:17.383610+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【renderControl】物料(0x104e0b630)修正前的服务端下发的渲染类型: 广告物料需要的渲染类型:动态布局渲染
2020-11-27 14:57:17.383934+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【renderControl】物料(0x104e0b630)修正后的渲染类型: 广告物料需要的渲染类型:动态布局渲染
2020-11-27 14:57:17.438497+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【webViewPool】缓存池测试:此webview可以复用 webview:0x129c39400
2020-11-27 14:57:17.438814+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【webViewPool】BUWebViewOwner: memory init:0x282924c40
2020-11-27 14:57:17.439792+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[slot与子模板id对应关系] slotId:945642973, templateDataId(物料返回):89
2020-11-27 14:57:17.439950+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板获取] 子模板id(89)
2020-11-27 14:57:17.440124+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板获取] 版本号校验通过, 物料版本(1.0.65), 主模板版本(1.0.206)
2020-11-27 14:57:17.440219+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板缓存管理] 通过子模板(89)获取缓存子模板信息
2020-11-27 14:57:17.440489+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板缓存管理] 子模板(89)存在,不需要创建一个新的
2020-11-27 14:57:17.440715+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板获取] 子模板(89)有缓存, 使用物料的子模板信息(如果有的话)替换缓存并使用缓存渲染
2020-11-27 14:57:17.441829+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板缓存管理] 通过子模板(89)获取缓存子模板信息
2020-11-27 14:57:17.442253+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[子模板缓存管理] 子模板(89)存在,不需要创建一个新的
2020-11-27 14:57:17.442667+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[slot与子模板id对应关系] 此templateDataId(89), 已经存在在slot(945642973)中了,不需要添加。
2020-11-27 14:57:17.443171+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【setting】[slot与子模板id对应关系] slotId:945642973, templateDataId(saveToCache):89
2020-11-27 14:57:17.445034+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【other】【统计】tag=rewarded_video lable=load_ad_duration adId=1679680284623933
2020-11-27 14:57:17.446437+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【BUFoundation】Request queue size = 0
2020-11-27 14:57:17.451494+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【rewardedVideo】video ad creative already exists locally
2020-11-27 14:57:17.451748+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【rewardedVideo】video cached successfully
2020-11-27 14:57:17.460573+0800 Runner[699:120783] 【BytedanceUnion V3.3.1.5】-【setting】[子模板缓存管理] 当前值是:1, 未达到了最大值:500
2020-11-27 14:57:17.464336+0800 Runner[699:120598] 【BytedanceUnion V3.3.1.5】-【setting】[缓存管理] 保存子模板信息并且保存子模板和rit对应的关系
2020-11-27 14:57:17.475015+0800 Runner[699:120706] 【BytedanceUnion V3.3.1.5】-【BUFoundation】【BytedanceUnion】Add request: BUExtlogRequest
2020-11-27 14:57:17.533129+0800 Runner[699:120780] 【BytedanceUnion V3.3.1.5】-【BUFoundation】Finished Request: BUExtlogRequest
2020-11-27 14:57:17.535276+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【BUFoundation】Request queue size = 0
2020-11-27 14:57:17.535776+0800 Runner[699:120409] 【BytedanceUnion V3.3.1.5】-【other】logstatusCode==200

开屏广告动画背景黑屏

开屏广告动画背景黑屏

问题描述

我认为此问题非 #3 , #27 等问题
如图所示 , 该问题是从右侧滑动过来的开屏广告 , 背景是黑色的?
可以去掉这个滑动动画吗 ? 直接展示

Pangolin 版本

0.2.4

Flutter 版本

1.23

问题出现的平台

仅安卓! ios 没有任何问题

问题的初现频率

100%

2020-10-30 18 07 05

Android 跑Example时出现 requesting domestic server with foreign ip

大佬,Android 运行 example时,出现下面的问题,
requesting domestic server with foreign ip
错误码:40026
但是我的Ip是国内的,这个是什么样的问题?

IOS运行是没有问题的。

D/AdStatsEventBatchThread(31117): clearCacheList, delete event from cache and db
D/DBMultiProviderImpl(31117): getType: content://com.tongyangsheng.pangolin_example.TTMultiProvider/t_db/ttopensdk.db/unknown/execSQL?sql=DELETE FROM logstats WHERE id IN ('ebe5c753-d90b-45a2-af9e-2231451b1b04')
D/splashLoad(31117): 广告物料预加载失败...**.requesting domestic server with foreign ip**40026
D/SplashAdCacheManager(31117): requesting domestic server with foreign ip40026
E/SplashAdCacheManager(31117): SplashAdCacheManager 已经加载过了 adSlot.getCodeId() 887310537
E/SplashAdCacheManager(31117): SplashAdCacheManager 是否需要加载其他rit开屏广告
E/SplashAdCacheManager(31117): entry.getKey() 887310537 entry.getValue() com.bytedance.sdk.openadsdk.component.splash.a$a$a@67c3c96
E/SplashAdCacheManager(31117): 重置开屏rit请求状态
D/AdStatsEventBatchThread(31117): start and return, checkAndDeleteEvent local size:1小于:100
D/TNCManager(31117): onResponse, url: https://api16-access-sg.pangle.io#69.192.218.33#0
D/TNCManager(31117): handleTncProbe, no probeProto, api16-access-sg.pangle.io
D/TNCManager(31117): onResponse, url matched: https://api16-access-sg.pangle.io#69.192.218.33#0 2#1#2 0#0#0
D/TNCManager(31117): onResponse, url: https://api16-access-sg.pangle.io#69.192.218.33#0
D/TNCManager(31117): handleTncProbe, no probeProto, api16-access-sg.pangle.io
D/TNCManager(31117): onResponse, url matched: https://api16-access-sg.pangle.io#69.192.218.33#0 2#1#2 0#0#0
D/TNCManager(31117): onResponse, url: https://api16-access-sg.pangle.io#69.192.218.33#0
D/TNCManager(31117): handleTncProbe, no probeProto, api16-access-sg.pangle.io
D/TNCManager(31117): onResponse, url matched: https://api16-access-sg.pangle.io#69.192.218.33#0 2#1#2 0#0#0
D/TNCManager(31117): onResponse, url: https://api16-access-sg.pangle.io#69.192.218.33#0
D/TNCManager(31117): handleTncProbe, no probeProto, api16-access-sg.pangle.io
D/TNCManager(31117): onResponse, url matched: https://api16-access-sg.pangle.io#69.192.218.33#0 2#1#2 0#0#0
D/DBMultiProviderImpl(31117): insert: content://com.tongyangsheng.pangolin_example.TTMultiProvider/t_db/ttopensdk.db/logstatsbatch
D/AdStatsEventBatchThread(31117): onHandleReceivedAdEvent mCloseSaveAndRetry is false, save event into db
D/AdStatsEventBatchThread(31117): onHandleReceivedAdEvent

tag:0.2.7 无法运行debug包

我是从0.2.3升到0.2.7的
然后直接运行报错:

/Users/xxx/code/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:130: error: <anonymous com.tongyangsheng.pangolin.RewardVideo$1$1> is not abstract and does not override abstract method onRewardVerify(boolean,int,String) in RewardAdInteractionListener
mttRewardVideoAd.setRewardAdInteractionListener(new TTRewardVideoAd.RewardAdInteractionListener() {
^
/Users/xxx/code/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:179: error: method does not override or implement a method from a supertype
@OverRide
^
Note: /Users/xxx/code/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/android/src/main/java/com/tongyangsheng/pangolin/UIUtils.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
2 errors

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':pangolin:compileDebugJavaWithJavac'.

Compilation failed; see the compiler error output for details.

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 20s
Running Gradle task 'assembleDebug'...
Running Gradle task 'assembleDebug'... Done 21.0s
Exception: Gradle task assembleDebug failed with exit code 1


本级环境:
[✓] Flutter (Channel stable, 1.22.5, on Mac OS X 10.15.7 19H2 darwin-x64, locale en-CN)
• Flutter version 1.22.5 at /Users/xxx/code/flutter
• Framework revision 7891006299 (7 weeks ago), 2020-12-10 11:54:40 -0800
• Engine revision ae90085a84
• Dart version 2.10.4
• Pub download mirror https://pub.flutter-io.cn
• Flutter download mirror https://storage.flutter-io.cn

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /Users/xxx/Library/Android/sdk
• Platform android-29, build-tools 29.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.4)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 12.4, Build version 12D4e
• CocoaPods version 1.8.4

[✓] Android Studio (version 4.1)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin installed
• Dart plugin version 201.9002
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.52.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.18.1

[✓] Proxy Configuration
• HTTP_PROXY is set
• NO_PROXY is localhost,127.0.0.1
• NO_PROXY contains 127.0.0.1
• NO_PROXY contains localhost

ios 报错

[!] The 'Pods-Runner' target has transitive dependencies that include statically linked binaries: (/Users/zr/lvxingcat/lvxingcat_client/ios/Pods/Bytedance-UnionAD/Bytedance-UnionAd/Frameworks/BUAdSDK.framework and /Users/zr/lvxingcat/lvxingcat_client/ios/Pods/Bytedance-UnionAD/Bytedance-UnionAd/Frameworks/BUFoundation.framework)

开屏广告加载失败。

D/splashLoad(12335): 广告物料预加载失败....服务异常40033
D/SplashAdCacheManager(12335): 服务异常40033
E/SplashAdCacheManager(12335): SplashAdCacheManager 已经加载过了 adSlot.getCodeId() 887343401
E/SplashAdCacheManager(12335): SplashAdCacheManager 是否需要加载其他rit开屏广告
E/SplashAdCacheManager(12335): mloadSplashParaHashMap == null || mloadSplashParaHashMap.size() == 0

开屏广告使用失效

大佬你好,我在实际接入穿山甲广告sdk过程中使用的是调用sdk+返回PlatformView的方法。测试是直接运行debug全能展示的,但是我打成release包过后广告就没了,我测试了一下在打成release包后,调用开屏广告里的方法 "mTTAdNative.loadSplashAd(adSlot, new TTAdNative.SplashAdListener() {...}"就不执行了,在直接运行debug模式时是完全正常的,但是打包成release就是没有,不知道你在实际开发过程中是否遇到,是怎样解决的,谢谢。

开屏广告使用失效

兄弟,你这插件我看了源码。你这不是flutter插件吗,你在android端加载开屏广告时返回View给flutter了吗,只返回个bool值,你怎么展示你的开屏广告?

iOS无法打开激励视频画面

初始化成功,点击观看视频Pangolin.loadRewardAd(...)。then((value){这里返回的是成功的!})但是不切换视频!

格式
激励视频无法打开
Pangolin v0.2.2
Flutter 1.18.0-11.1.pre
ios
必现

flutter pub failed

环境

$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.20.4, on Mac OS X 10.15.7 19H2, locale zh-Hans-CN)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
[✓] Android Studio (version 4.0)
[✓] VS Code (version 1.49.2)
[✓] Proxy Configuration
[✓] Connected device (2 available)

• No issues found!

报错提示

[   +9 ms] /Users/muyu/Projects/FlutterProjects/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.3/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:130: 错误:
<匿名com.tongyangsheng.pangolin.RewardVideo$1$1>不是抽象的, 并且未覆盖RewardAdInteractionListener中的抽象方法onRewardVerify(boolean,int,String,int,String)
[   +3 ms]                 mttRewardVideoAd.setRewardAdInteractionListener(new TTRewardVideoAd.RewardAdInteractionListener() {
[        ]                                                                                                                   ^
[        ] /Users/muyu/Projects/FlutterProjects/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.3/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:179: 错误:
方法不会覆盖或实现超类型的方法
[        ]                     @Override
[        ]                     ^
[        ] 注: /Users/muyu/Projects/FlutterProjects/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.3/android/src/main/java/com/tongyangsheng/pangolin/TTAdManagerHolder.java使用或覆盖了已过时的
API。
[        ] 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。
[        ] 注: /Users/muyu/Projects/FlutterProjects/flutter/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.3/android/src/main/java/com/tongyangsheng/pangolin/UIUtils.java使用了未经检查或不安全的操作。
[        ] 注: 有关详细信息, 请使用 -Xlint:unchecked 重新编译。
[        ] 2 个错误
[        ] FAILURE: Build failed with an exception.
[        ] * What went wrong:
[        ] Execution failed for task ':pangolin:compileDebugJavaWithJavac'.
[        ] > Compilation failed; see the compiler error output for details.
[        ] * Try:
[        ] Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
[        ] * Get more help at https://help.gradle.org
[        ] BUILD FAILED in 7s

如果你想新建一个issue,请查看issue格式😉

为了更方便的排查/解决您的问题,所有issue必须提供相应的描述,否则将被手动关闭,谢谢配合

格式

  • 问题描述(Log)
  • Pangolin 版本
  • Flutter 版本
  • 问题出现的平台
  • 问题的初现频率

example

  • 激励视频无法打开
  • Pangolin v0.2.2
  • Flutter 1.20.1 stable
  • Android
  • 必现

0.2.5最新版对flutter好像运行不起来?

  • Where:
    Build file '/Users/wengxianxun/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.5/android/build.gradle' line: 37

  • What went wrong:
    A problem occurred evaluating project ':pangolin'.

Project with path ':open_ad_sdk_new' could not be found in project ':pangolin'.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.