|
程序内置了admob广告条(或其它广告条) 谢谢!!! |
|
![]() 50分 |
我提供一个思路,不过我也没试过,仅供参考
点击广告之后,他需要打开一个浏览器类型的应用,因此必然调用了 startActivity 这种东西, 所以,你可以重写你的 startActivity,在里面判断是否是广告点击,然后 获取对应链接数据,将使用内置浏览器打开,屏蔽他的 Intent |
![]() 40分 |
1.创建一个Activity,包含WebView控件
2.在这个Activity的onCreate函数里增加以下代码:
String adUrl = "your ad url";
WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {});
webView.loadUrl(adUrl);
3.在别的Activity里通过startActivity打开广告页面 |
![]() |
更详细一些:
1.创建广告AdActivity类:
public class AdActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ad);
Intent intent = getIntent();
String url = intent.getStringExtra("url");
WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {});
webView.loadUrl(url);
}
}
对应布局文件activity_ad.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> 2.在AndroidMenifest.xml中注册AdActivity: <application> ... <activity android:name=".AdActivity" /> </application> 3.在你的Activity中打开广告页面:
Intent intent = new Intent(this, AdActivity.class);
intent.putExtra("url", "http://ad.163.com/"); // 换成真实广告url
startActivity(intent);
|
![]() |
还可以再改进一下:
public class AdActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE); // 节省空间不显示title
setContentView(R.layout.activity_ad);
Intent intent = getIntent();
String url = intent.getStringExtra("url");
WebView webView = (WebView)findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebViewClient(new WebViewClient() {});
webView.loadUrl(url);
}
public static void startAction(Activity activity, String url) {
Intent i = new Intent(activity, AdActivity.class);
i.putExtra("url", url);
activity.startActivity(i);
}
}
在别的Activity里打开广告: AdActivity.startAction(this, "http://ad.16.com"); |
![]() |
感谢两位的热心帮助!
我觉得比较难搞的是 svenwang说的: 3.在你的Activity中打开广告页面 可能得像kifile说的:“重写你的 startActivity,在里面判断是否是广告点击,然后 获取对应链接数据,将使用内置浏览器打开,屏蔽他的 Intent” 百度了一下 没找到合适的代码 |
![]() |
如果他要通过 startActivity 打开网页,他必须在传输的 intent 里 setData()进去,这个 data 就是网址,你可以通过 getData()获取,然后进行处理
|
![]() |
原理看懂了 可搜一晚上没找到具体要怎么写 看来是得慢慢学下基础知识先 可否给点代码或相关介绍的网址研究下 因为这个急用 谢。。。 |
![]() 10分 |
6楼说的有理,svenwang说的根本没理解整个东西的关键点
|
![]() |
谢谢各位
结帖了 |

