flutter - 是否有可能 - 在 Flutter Web 应用程序中插入 google AdSense?

标签 flutter adsense flutter-web

我尝试在我的网站上插入下一个代码 (Google AdSense),但现在没有成功。代码是:

            <script type="text/javascript">var nend_params={"media":00000,"site":000000,"spot":000000,"type":1,"oriented":1};0</script>
            <script type="text/javascript" src="https://js1.nend.net/js/nendAdLoader.js"></script>

1.有一段时间我尝试了一个带有类似句子的“dart:js”
    js.context.callMethod(..

但是,认为它不起作用,因为我们需要展示广告,而不仅仅是执行 javascript 代码..

2.next,我想它可以是一个WebView(一个webview,在webapp..)并尝试使用next:

依赖项:
webview_flutter:^0.3.14
但它与

“错误:PlatformException(未注册的工厂,没有为 View 类型'plugins.flutter.io/webview'注册工厂”...

可能有人有积极的经验或可以给我任何建议。

最佳答案

如果您的网页中只需要这些脚本,您可以尝试将其包含在 web/Index.html 中。直接翻页。

否则你将不得不使用 ui.platformViewRegistry.registerViewFactory如图所示 PlatFormView example .以下代码将向您的页面添加脚本元素。

import 'package:flutter/material.dart';
import 'dart:ui' as ui;
import 'dart:html';

class MyHomePage extends StatelessWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  Widget build(BuildContext context) {
    ui.platformViewRegistry.registerViewFactory("add_script", (int viewId) {
      ScriptElement element = ScriptElement()
        ..src = "https://js1.nend.net/js/nendAdLoader.js"
        ..type = "text/javascript";
      return element;
    });
    return Center(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: <Widget>[
          Directionality(
            textDirection: TextDirection.ltr,
            child: SizedBox(
              width: 640,
              height: 360,
              child: HtmlElementView(viewType: 'add_script'),
            ),
          ),
        ],
      ),
    );
  }
}

Note: This code needs a hosting widget like a scaffold inside a MaterialApp or something similar. For the code inside the script try creating a similar widget with different viewtype string and use the setInnerHtml or similar methods.



但是你应该知道这个元素是作为一个 shadow dom 元素添加到你的页面中的。此 issue讨论这个。

enter image description here

关于flutter - 是否有可能 - 在 Flutter Web 应用程序中插入 google AdSense?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57909791/

相关文章:

flutter - 在Flutter中3秒后如何自动拍照?

php - Adsense 似乎无法识别 PHP 生成的内容

flutter - 如何在 Flutter for web TextField 上触发 onSubmitted

firebase - 使用.limitToFirst或.limitToLast仍会在Firebase Realtime数据库中返回整个数据

flutter - 如何在 Flutter 中异步调用 JavaScript?

flutter - PickedImage 为空

android-studio - <Flutter> 模拟器已启动但未被 android studio 检测到

android - Flutter 找不到连接的设备(虚拟设备)

android - Interstitial ads 是否比 Banner ads 帮助我们获得更多收入?

javascript - 如何使 Google Adsense 在页面其余部分之后加载