app 接入网站广告的思路

2020-02-24 20:39:30 +08:00
 abellee000
需要在 app 内接入网站广告,我的想法是用 webview 来打开带有广告 js 的静态页面,然后用户点击就跳转到对应广告内容页,这样可行么
3633 次点击
所在节点    程序员
13 条回复
abellee000
2020-02-24 20:40:05 +08:00
😂😂😂第一次做这种东西,查了半天没找到相关的资料
clf
2020-02-24 20:47:25 +08:00
不需要这么麻烦,你去了解一下 APP 广告联盟,有专门的不同类型的广告 SDK 文档的。
pkxutao
2020-02-24 21:59:30 +08:00
先说一下应用场景吧
PDX
2020-02-24 22:48:51 +08:00
同问,如果是 flutter 该怎么接呢
lc7029
2020-02-25 00:05:53 +08:00
google adsense,有 SDK
TimeRain
2020-02-25 08:36:26 +08:00
admob
abellee000
2020-02-25 09:55:09 +08:00
@lychs1998 我去查了你说的方式,那种只支持一部分广告平台,像 admob 中介适配器只支持一部分…
abellee000
2020-02-25 09:57:19 +08:00
@PDX 我就是在用 flutter,因为某些原因无法使用 admob 这种已经集成好的 sdk,目前通过 webview_flutter 插件做的 cpm,但点击广告后跳转无法实现(广告在 iframe 内)
abellee000
2020-02-25 11:33:41 +08:00
mark 一下,android 下的解决方案,需要修改 flutter_webview 的 android sdk
打开 webview_flutter 的缓存位置,找到
`.\android\src\main\java\io\flutter\plugins\webviewflutter\FlutterWebView.java`
在 FlutterWebView 的构造函数 FlutterWebView 的
```
// Allow local storage.
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
```
下方添加上允许加载打开多页面(因为我使用的广告代码中使用了`<a target="_blank">`)
```
// todo:fix _target="_blank" in iframe tag
webView.getSettings().setSupportMultipleWindows(true);//代表支持多窗口打开
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) {
WebView newWebView = new WebView(view.getContext());
newWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// 在此处进行跳转 URL 的处理, 一般情况下_black 需要重新打开一个页面, 这里我直接让当前的 webview 重新 load 了 url
webView.loadUrl(url);
/* 或使用默认浏览器打开
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(browserIntent);
*/
return true;
}

});
WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj;
transport.setWebView(newWebView);
resultMsg.sendToTarget();
return true;
}
});
```
两处注释分别是直接在原 webview 页面 t 中跳转到广告或使用默认浏览器打开广告,各有利弊,使用时酌情选择,ios 端不会改。
abellee000
2020-02-25 11:34:34 +08:00
为啥 markdown 不能用呢
spark40
2020-02-25 13:13:28 +08:00
admob 了解一下?
abellee000
2020-02-25 15:36:53 +08:00
@spark40 是因为 admob 用不了才自己做的
spark40
2020-02-25 17:43:25 +08:00
@abellee000 日活很多了?需要商业化了?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/647203

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX