🐾 Flutter 广告SDK-字节跳动-穿山甲 集成

Overview

drawing

前言

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

Pangolin 报错及其解决方案

公告

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 具体步骤已为你写好请戳 👉

Pangolin Android 集成手册

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
  • 请各位不要在周末的时候尝试加好友,周末要么在加班要么在各地旅游 ✈️ 。好友请求很容易过期...
Comments
  • 0.2.5最新版对flutter好像运行不起来?

    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'.

    bug waiting for customer response 
    opened by wengxianxun 6
  • Android 跑Example时出现  requesting domestic server with foreign ip

    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

    documentation 
    opened by wd308389182 5
  • flutter pub failed

    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
    
    waiting for customer response 
    opened by muyu2019 4
  • Is the SDK version old?

    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?

    opened by ioridev 4
  • ios 报错

    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)

    opened by ruifly2012 4
  • 开屏广告使用失效

    开屏广告使用失效

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

    opened by FangPro 4
  • 开屏广告动画背景黑屏

    开屏广告动画背景黑屏

    开屏广告动画背景黑屏

    问题描述

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

    Pangolin 版本

    0.2.4

    Flutter 版本

    1.23

    问题出现的平台

    仅安卓! ios 没有任何问题

    问题的初现频率

    100%

    2020-10-30 18 07 05

    opened by ixugo 2
  • ios pod install 错误

    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 新开一个,把情况描述一下

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

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

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

    使用插件版本: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.
    
    opened by ahyangnb 1
  • android 激励视频,关闭debug 没回调

    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); }

    bug 
    opened by tangbincheng 1
  • 编译报错

    编译报错

    /Users/wxx/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:130: 错误: <匿名com.tongyangsheng.pangolin.RewardVideo$1$1>不是抽象的, 并且未覆盖RewardAdInteractionListener中的抽象方法onRewardVerify(boolean,int,String) mttRewardVideoAd.setRewardAdInteractionListener(new TTRewardVideoAd.RewardAdInteractionListener() { ^ /Users/wxx/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/android/src/main/java/com/tongyangsheng/pangolin/RewardVideo.java:179: 错误: 方法不会覆盖或实现超类型的方法 @Override ^ 注: /Users/wxx/.pub-cache/hosted/pub.flutter-io.cn/pangolin-0.2.7/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.

    opened by wengxianxun 1
  • 穿山甲sdk可能需要更新

    穿山甲sdk可能需要更新

    苹果在iOS14.5版本中向开发者提供了skadnetwork归因方案(https://developer.apple.com/documentation/storekit/skadnetwork),为保障开发者的收益,我们发布了适配iOS 14.5版本的SDK(3511以上的版本),开发者可以使用pod 'Ads-CN'接入SDK。在接入SDK时请务必按照接入文档中的"穿山甲开发者升级 iOS 14 Checklist(https://www.pangle.cn/help/doc/5fbdb5571ee5c2001d3f0c6f)"中注意事项进行配置穿山甲network id。如果您已接入3511以上版本并且配置了穿山甲network id,则可以忽略本条通告。

    具体可以看: https://www.pangle.cn/help/doc/5fbdb5571ee5c2001d3f0c6f

    不知道现在sdk是否需要更新?

    opened by rockingdice 0
  • Android激励视频中点击下载下载失败

    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

    opened by huntrist 1
  • pod设置升级

    pod设置升级

    收到如下官方信息

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

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

    谢谢

    opened by huntrist 0
Owner
OpenFlutter
Make it easier.让Flutter更简单。
OpenFlutter
a project for learning all Flutter Widgets , sync from flutter.dev the officia website.

Flutter Widgets Catalog (WIP) 计划 1、使用Flutter开发一个全平台的Flutter Widgets Catalog APP,并且开源。在这个APP中可以通过图形化的方式查看所有Widgets的介绍,示例,视频教程。 2、所有文档内容由前一天从flutter.dev

ezshine 32 Aug 3, 2022
A low-cost Flutter screen adaptation solution(一个极低成本的 Flutter 屏幕适配方案)

A low-cost Flutter screen adaptation solution(一个极低成本的 Flutter 屏幕适配方案) 100% 还原 UI,只需要按照设计图写的宽高写即可 先看图片,设置的标准宽度是 360 iPhone 8 --------------------------

聂志洋 108 Sep 27, 2022
Flutter 2.0 (Null safety) Basic, Dynamic & Silver style Staggered Grid views made using flutter staggered grid view package. 🦺

Staggered Grid View Developement Stack Getting Started This project is a starting point for a Flutter application. A few resources to get you started

Nakshatra Singh 9 Oct 28, 2022
A Flutter package that makes it easy to customize and work with your Flutter desktop app's system tray.

system_tray A Flutter package that that enables support for system tray menu for desktop flutter apps. on Windows, macOS and Linux. Features: - Modify

AnTler 140 Dec 30, 2022
Email and Password Authentication In Flutter & Firebase in Flutter 2.2

Email and Password Authentication In Flutter & Firebase in Flutter 2.2

BackSlash Flutter 43 Nov 23, 2022
Learn Flutter on Flutter! A widget directory with implementation samples!

Fludget Browse through a variety of widgets used in flutter This application is developed to learn Flutter using Flutter. Different widgets used in fl

ACM VIT 29 Nov 23, 2022
A Flutter package that makes it easy to customize and work with your Flutter desktop app window.

bitsdojo_window A Flutter package that makes it easy to customize and work with your Flutter desktop app window on Windows, macOS and Linux. Watch the

Bits Dojo 606 Dec 27, 2022
DoneIt is a sample note app 📝 Flutter application 📱 built to demonstrate use of Clean Architecture tools. Dedicated to all Flutter Developers with ❤️.

DoneIt ?? DoneIt is a sample note app ?? Flutter application ?? built to demonstrate use of Clean Architecture tools. Dedicated to all Flutter Develop

Shubham Chhimpa 175 Dec 24, 2022
Utility Manager Flutter Application is made with Flutter and Supabase which allows user to add task, set remainder to the task, set color to separate tasks and it allows to add URL with URL's informations.

Utility Manager Flutter Application! Utility Manager Flutter Application is made with Flutter and Supabase which allows user to add task, set remainde

Kathirvel Chandrasekaran 6 Jan 6, 2022
My first Flutter project - a recipes app, from the book Flutter Apprentice.

recipes My first Flutter project - a recipes app, from the book Flutter Apprentice. Getting Started This project is a starting point for a Flutter app

Adatta1276 1 Dec 28, 2021
Projeto Flutter sendo desenvolvido para a Formação Flutter da plataforma Alura

ByteBank / A Flutter Journey Table of Contents About • Features • ?? About This is a project being developed for a Flutter couse in Alura plataform, s

Mike Jhoe 1 Oct 25, 2021
Plugins for Flutter maintained by the Flutter team

Flutter plugins This repo is a companion repo to the main flutter repo. It contains the source code for Flutter first-party plugins (i.e., plugins dev

Flutter 16.6k Dec 29, 2022
QR.Flutter is a Flutter library for simple and fast QR code rendering via a Widget or custom painter.

QR.Flutter is a Flutter library for simple and fast QR code rendering via a Widget or custom painter. Need help? Please do not submit an issue for a "

Yakka 612 Jan 4, 2023
Stream Feed official Flutter SDK. Build your own feed experience using Dart and Flutter.

Official Flutter packages for Stream Activity Feeds The official Dart client for Stream Activity Feeds, a service for building activity feed applicati

Stream 67 Sep 26, 2022
Flutter app built as a submission for the 2019 Flutter Create contest

relax Relax is a Flutter application built for the Flutter Create contest. It gives the user the choice of four nature sounds and rotates through rela

Erin Morrissey 85 Dec 8, 2022
An end-to-end Flutter app built to get details and trending recipes - made as a part of the book 'Flutter Apprentice' by raywenderlich.com

Fooderlich - Flutter Apprentice An end-to-end Flutter app built to get details and trending recipes - made as a part of the book 'Flutter Apprentice'

Suvaditya Mukherjee 1 Dec 4, 2021
Expenses tracker built with Flutter and Dart making use of Provider, Intl, Syncfusion Flutter Datepicker and more

expense_app A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if t

Atuoha Anthony 2 Dec 10, 2022
Flutter Admin Panel Made In Flutter 2.8

Responsive Admin Panel or Dashboard - Flutter UI Packages we are using: flutter_svg: link google_fonts: link provider: link Fonts Poppins link Respons

Manish Dayma 58 Dec 23, 2022