當前位置:首頁 » 安卓系統 » android輪播廣告

android輪播廣告

發布時間: 2023-09-16 19:52:07

A. 如何:在Android應用中加入廣告方法步驟

廣告牆和推送廣告我使用萬普,廣告條我使用芒果的聚合,暫時打算用多盟、有米這2個平台。(之所以用多個平台是可以根據情況做實時的在線比例分配,這樣可以有更多的選擇餘地,當然也不是越多越好,加的平台越多應用就越臃腫,你的收入當然就分散了,而每個平台都至少要求100元才能提款的。)


首先我們來添加廣告牆和推送廣告。


1.登錄萬普平台,進入開發者頁面,點擊添加應用,輸入應用名稱,點保存,之後打開應用詳情頁面,記下WAPS_ID的值備第2步驟使用。後面的信息也盡量完善起來,


文件程序等最後完成廣告集成並測試後再上傳即可。


2.在我的項目的AndroidManifest.xml文件下添加廣告需要的許可權(具體要哪些許可權參加廣告SDK的幫助和實際情況定):


<uses-permission android:name="android.permission.READ_PHONE_STATE" />

<uses-permission android:name="android.permission.INTERNET" />

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission android:name="android.permission.GET_TASKS" />


在Application項加入:


<meta-data android:name="WAPS_ID" android:value="" />

<meta-data android:name="WAPS_PID" android:value="WAPS" />

<activity android:name="com.waps.OffersWebView"

android:configChanges="keyboardHidden|orientation" />


第一行android:value對應的字元串要替換成步驟1從萬普添加應用後得到的ID,千萬不要填錯哦。


第二行是萬普進行渠道設置選項,最好按其開發者手冊最後對應的表格來填寫


第三行是展示廣告牆所使用的activity,不添加會導致展示不了廣告牆


3.Eclipse->Project->Properties->Java Build Path->Libraries->Add External JARs->選擇我們前面下載解壓出來的AppOffer_1.5.3.jar,來完成添加萬普SDK的Jar包。

在對應更多應用菜單的處理事件里加入AppConnect.getInstance(this).showOffers(this);來打開廣告牆。


運行應用,點擊更多應用,順利打開推薦列表如圖:


4.打開項目的入口Activity,在onCreate事件里寫入


AppConnect.getInstance(this);


AppConnect.getInstance(this).getPushAd(); //自動推送使用,如果你在萬普web端配置自動推送則可以注釋次行


在退出應用的地方(我是在入口Activity的onDestroy事件)寫入


AppConnect.getInstance(this).finalize();


運行推送效果如下圖:


點擊通知(推送廣告) 打開如圖


這樣我們就把萬普的廣告牆和推送模式的廣告集成好了,將應用使用正式簽名(方法網上搜很多,這里不介紹)編譯後將apk上傳到萬普審核,同時就可以發布到市場渠道去讓用戶下載了。(關於市場發布下篇里再介紹)


下面介紹使用芒果聚合來添加廣告條:


1.登錄芒果平台,添加新應用,打*的必須填寫,點下一步來進入廣告平台選擇頁面。


2.到你要添加的廣告平台添加新應用來獲取對應的ID,並把這些ID設置到1步驟芒果平台對應的ID設置中(點對應平台後面的「未設置」)。


3.點擊芒果頁面上對應平台後面的按鈕來打開對應平台的狀態,並點擊開啟測試,以便接下來測試是否能正常獲取測試廣告。同時將2個平台的比例均配成50%。


4.點擊下一步,應用就添加完成了。會得到一個芒果ID備用,下載芒果廣告的SDK。(因為該SDK里已經包含了其所支持的所有平台的jar包,所以不需要單獨再去下載其他廣告平台的包了,而且聚合平台不一定及時更新所有平台的包,可能會對廣告平台的更新沒有及時更改其SDK,所以也必須從這里下)


5.解壓芒果上下載下來的SDK,並將其libs下對應平台的包加入工程(我這里加入AdsMOGO-SDK-Android.jar[芒果]、youmi-android.jar[有米]、domob_android_sdk.jar[多盟])。


6.修改AndroidManifest.xml文件,添加必要的許可權,以及到芒果SDK的開發幫助文檔里找到對應平台要求添加的activity。我這里加入:


<!-- 多盟integration -->

<activity android:name="cn.domob.android.ads.DomobActivity"

android:theme="@android:style/Theme.Translucent" />

<!-- 有米integration -->

<activity android:name="net.youmi.android.AdActivity"

android:configChanges="keyboard|keyboardHidden|orientation" />

<activity android:name="net.youmi.android.spotad.AdActivity"

android:configChanges="keyboard|keyboardHidden|orientation" />


7.加入芒果Key的meta-data ,將值替換你在芒果平台最後得到的KEY值,我這邊如下:


<meta-data android:value="" android:name="ADMOGO_KEY" />


8.在要展示的地方添加代碼如下:


AdMogoLayout adview = new AdMogoLayout(this,""); //ID跟xml配置的相同

FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(

FrameLayout.LayoutParams.WRAP_CONTENT,

FrameLayout.LayoutParams.WRAP_CONTENT);

// 設置廣告出現的位置(懸浮於頂部)

params.topMargin = 0;

params.gravity = Gravity.TOP|Gravity.CENTER_HORIZONTAL;

addContentView(adview, params);


這段代碼作用是新建一個芒果廣告的View,並將它加到activity的最頂端。


9.OK,代碼都添加完成,運行測試,廣告正常展示如下:



自己點擊測試下,是否能正常打開廣告頁面。到芒果web頁面調整廣告平台的分配比例,分別測試所有你的平台是否均成功展示。如果有失敗,請核對芒果上配置的ID或密碼是否相同(包括前後不能有空格),任然有問題的話聯系平台技術人員幫你協助解決。


10.最後一步,將芒果web頁面上的比例平均分配,關閉測試模式。然後將應用簽名打包,上傳到各個廣告平台審核。(平均分配是為了審核人員保證有機會能看到你的應用上有展示他們平台的廣告),審核均通過後就可以發布到各個市場上來開始收益旅程了。


http://blog.csdn.net/fenger8293/article/details/6922992

B. 怎麼阻止安卓手機老是彈出廣告

1、首先打開系統設置中的「應用程序管理器」

(2)android輪播廣告擴展閱讀

Android是一種基於Linux的自由及開放源代碼的操作系統,主要使用於移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統一中文名稱,中國大陸地區較多人使用「安卓」或「安智」。Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。

2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手睜鏈瞎機聯盟共同研發改良Android系統。隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。

在2008年9月,谷歌正式發布了Android 1.0系統,這也是Android系統最早喚臘的版本;到2013年11月01日正式發布,新的4.4系統更加整合了自家服務,力求防止安卓系統繼續碎片化、分散化。[1]這已經過去了5個年頭了,在今年的谷歌在I/O 開發者大會上,谷歌正式推出Android L。

Android L可以說是Android系統自2008年問世以來變化最大的升級。除了新的用戶界面、性能升級和跨平台支持,全面的電池壽命增強及更深入的應用程序集成也令人印象深刻。

C. Android中GridView如何與廣告位輪播實現一起滑動

1.首先自定義一個ViewFlow類。
2.然後定義一個CircleFlowIndicator類。
具體代碼依然見源碼
3.接下來就在布局文件中開始使用了

<framelayout android:id="@+id/framelayout" android:layout_height="300dip" android:layout_width="fill_parent" android:orientation="vertical">
</framelayout>代碼中有個app:activeType,app:radius 這樣的東西,可能新手不是很明白到底是個shenmegui,解釋一下這是自定義屬性。
使用自定義屬性首先要記得把這個屬性相應的命名空間給加在布局文件的開頭,否則無法編譯。
xmlns:app=」http://schemas.android.com/apk/res-auto」
這些屬性都對應在attrs.xml文件中可以找到。
4.然後就可以在Activity中調用了,具體的代碼是:

/**
* @Description:顯示廣告條的主頁
* @author http://blog.csdn.net/finddreams
*/
public class MainActivity extends Activity {

private ViewFlow mViewFlow;
private CircleFlowIndicator mFlowIndicator;
private ArrayList imageUrlList = new ArrayList();
ArrayList linkUrlArray= new ArrayList();
ArrayList titleList= new ArrayList();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
imageUrlList.add(https://gss0..com/9vo3dSag_xI4khGko9WTAnF6hhy/image/pic/item/.jpg);
imageUrlList.add(https://gss0..com/-fo3dSag_xI4khGko9WTAnF6hhy/image/pic/item/.jpg);
imageUrlList.add(https://gss0..com/-Po3dSag_xI4khGko9WTAnF6hhy/image/pic/item/.jpg);
linkUrlArray.add(http://blog.csdn.net/finddreams/article/details/44301359);
linkUrlArray.add(http://blog.csdn.net/finddreams/article/details/43486527);
linkUrlArray.add(http://blog.csdn.net/finddreams/article/details/43194799);
titleList.add(Android開發面試經——);
titleList.add(Android控制項GridView之仿支付寶錢包首頁帶有分割線的GridView九宮格的完美實現);
titleList.add(Android動畫之仿美團載入數據等待時,小人奔跑進度動畫對話框 );
initBanner(imageUrlList);
}

private void initView() {
mViewFlow = (ViewFlow) findViewById(R.id.viewflow);
mFlowIndicator = (CircleFlowIndicator) findViewById(R.id.viewflowindic);

}

private void initBanner(ArrayList imageUrlList) {

mViewFlow.setAdapter(new ImagePagerAdapter(this, imageUrlList,
linkUrlArray, titleList).setInfiniteLoop(true));
mViewFlow.setmSideBuffer(imageUrlList.size()); // 實際圖片張數,
// ImageAdapter實際圖片張數為3

mViewFlow.setFlowIndicator(mFlowIndicator);
mViewFlow.setTimeSpan(4500);
mViewFlow.setSelection(imageUrlList.size() * 1000); // 設置初始位置
mViewFlow.startAutoFlowTimer(); // 啟動自動播放
}
}
5.有一個很關鍵的就是ImagePagerAdapter這個適配器,因為載入網路圖片是在這個類里實現的,還有廣告條的點擊,進入一個Web界面的實現。在這里載入網路圖片使用了一個很火的開源項目,UniversalImageLoader(非同步載入網路圖片) 。
ImagePagerAdapter.class 類:

/**
* @Description: 圖片適配器
* @author http://blog.csdn.net/finddreams
*/
public class ImagePagerAdapter extends BaseAdapter {

private Context context;
private List imageIdList;
private List linkUrlArray;
private List urlTitlesList;
private int size;
private boolean isInfiniteLoop;
private ImageLoader imageLoader;
private DisplayImageOptions options;

public ImagePagerAdapter(Context context, List imageIdList,
List urllist, List urlTitlesList) {
this.context = context;
this.imageIdList = imageIdList;
if (imageIdList != null) {
this.size = imageIdList.size();
}
this.linkUrlArray = urllist;
this.urlTitlesList = urlTitlesList;
isInfiniteLoop = false;
// 初始化imageLoader 否則會報錯
imageLoader = ImageLoader.getInstance();
imageLoader.init(ImageLoaderConfiguration.createDefault(context));
options = new DisplayImageOptions.Builder()
.showStubImage(R.drawable.ic_launcher) // 設置圖片下載期間顯示的圖片
.showImageForEmptyUri(R.drawable.meinv) // 設置圖片Uri為空或是錯誤的時候顯示的圖片
.showImageOnFail(R.drawable.meinv) // 設置圖片載入或解碼過程中發生錯誤顯示的圖片
.cacheInMemory(true) // 設置下載的圖片是否緩存在內存中
.cacheOnDisc(true) // 設置下載的圖片是否緩存在SD卡中
.build();

}

@Override
public int getCount() {
// Infinite loop
return isInfiniteLoop ? Integer.MAX_VALUE : imageIdList.size();
}

/**
* get really position
*
* @param position
* @return
*/
private int getPosition(int position) {
return isInfiniteLoop ? position % size : position;
}

@Override
public View getView(final int position, View view, ViewGroup container) {
final ViewHolder holder;
if (view == null) {
holder = new ViewHolder();
view = holder.imageView = new ImageView(context);
holder.imageView
.setLayoutParams(new ViewGroup.LayoutParams(-1, -1));
holder.imageView.setScaleType(ImageView.ScaleType.FIT_XY);
view.setTag(holder);
} else {
holder = (ViewHolder) view.getTag();
}

imageLoader.displayImage(
(String) this.imageIdList.get(getPosition(position)),
holder.imageView, options);

holder.imageView.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
String url = linkUrlArray.get(ImagePagerAdapter.this
.getPosition(position));
String title = urlTitlesList.get(ImagePagerAdapter.this
.getPosition(position));
/*
* if (TextUtils.isEmpty(url)) {
* holder.imageView.setEnabled(false); return; }
*/
Bundle bundle = new Bundle();

bundle.putString(url, url);
bundle.putString(title, title);
Intent intent = new Intent(context, BaseWebActivity.class);
intent.putExtras(bundle);

context.startActivity(intent);
Toast.makeText(context, 點擊了第 + getPosition(position) ,
0).show();

}
});

return view;
}

private static class ViewHolder {

ImageView imageView;
}

/**
* @return the isInfiniteLoop
*/
public boolean isInfiniteLoop() {
return isInfiniteLoop;
}

/**
* @param isInfiniteLoop
* the isInfiniteLoop to set
*/
public ImagePagerAdapter setInfiniteLoop(boolean isInfiniteLoop) {
this.isInfiniteLoop = isInfiniteLoop;
return this;
}

@Override
public Object getItem(int arg0) {
// TODO Auto-generated method stub
return arg0;
}

@Override
public long getItemId(int arg0) {
// TODO Auto-generated method stub
return arg0;
}

}
6.點擊進入一個帶進度條的WebView的Activity,載入成功就可以了。

D. 怎樣屏蔽安卓系統的廣告

為了屏蔽Android系統中的廣告,可以嘗試以下方法:

1. 使用AD Blocker應用程序:在Google Play Store中有很多可供免費下載的廣告攔截器應用洞拆程序。這些應用程序可以幫助你屏蔽網頁和其他應用程序中的廣告。例如,「AdGuard」和「Blokov」等應用程序。

2. 使用VPN應用程序:某些VPN應用程序具有廣告屏蔽功能。如果你使用這些應用程序,你可以打開應用程序設置,在特定VPN上啟用廣告攔截功能。比較常見的VPN應用程序有「1.1.1.1」和「NordVPN」。

3. 使用瀏覽器擴展:如果你在瀏覽網頁時經常遇到過多的廣告,請使用廣告攔截瀏覽器擴展,如uBlock Origin、Adblock Plus等。

4. 在智能手機的設置中關閉興趣標簽功能。安卓系統的興趣標簽功能會向你提供你可能感興趣的廣告,如果你關閉這個功能,你就可以減少看到這些廣告的機會。

以上這些方法可以有效地幫助你屏蔽Android系統中的廣告。但是,需要注意的是,某些應用程納畝棗序可能需要廣告來維持其耐源免費服務,所以在設置廣告攔截器時請謹慎考慮。

E. 在android中廣告輪播是怎麼做的

第二種:使用ViewFlipper實現圖片的輪播

Android系統自帶的一個多頁面管理控制項,它可以實現子界面的自動切換:
首先 需要為ViewFlipper加入View
(1) 靜態導入:在layout布局文件中直接導入
(2) 動態導入:addView()方法
ViewPlipper常用方法:
setInAnimation:設置View進入屏幕時候使用的動畫
setOutAnimation:設置View退出屏幕時候使用的動畫
showNext:調用該函數來顯示ViewFlipper裡面的下一個View
showPrevious:調用該函數來顯示ViewFlipper裡面的上一個View
setFlipInterval:設置View之間切換的時間間隔
startFlipping使用上面設置的時間間隔來開始切換所有的View,切換會循環進行
stopFlipping:停止View切換
講了這么多,那麼我們今天要實現的是什麼呢?
(1) 利用ViewFlipper實現圖片的輪播
(2) 支持手勢滑動的ViewFlipper
我們需要先准備幾張圖片:把圖片放進drawable中
創建兩個動畫:在res下面新建一個folder裡面新建兩個xml:
left_in:

android:ration=5000
android:fromXDelta=100%p
android:toXDelta=0/>

left_out:

android:fromXDelta=0
android:toXDelta=-100%p
android:ration=5000/>

一個布局文件:
xmlns:tools=http://schemas.android.com/tools
android:layout_width=match_parent
android:layout_height=match_parent
tools:context=.MainActivity >

android:id=@+id/flipper
android:layout_width=fill_parent
android:layout_height=fill_parent/>

一個主類:
public class MainActivity extends Activity {

private ViewFlipper flipper;
private int[] resId = {R.drawable.pc1,R.drawable.pc2,R.drawable.pc3,R.drawable.pc4};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

flipper = (ViewFlipper) findViewById(R.id.flipper);

/*
* 動態導入的方式為ViewFlipper加入子View
* */
for (int i = 0; i < resId.length; i++) {
flipper.addView(getImageView(resId[i]));

}
/*
* 為ViewFlipper去添加動畫效果
* */
flipper.setInAnimation(this, R.anim.left_in);
flipper.setOutAnimation(this, R.anim.left_out);
flipper.setFlipInterval(5000);
flipper.startFlipping();
}
private ImageView getImageView(int resId){
ImageView image = new ImageView(this);
image.setBackgroundResource(resId);
return image;
}

}
那麼這樣就實現了一個圖片輪詢的功能效果了
我們還可以添加點擊,滑動效果:
我們還需要添加兩個向右的滑動效果:
right_in:

android:fromXDelta=0
android:toXDelta=-100%p
android:ration=2000/>

right_out:

android:fromXDelta=100%p
android:toXDelta=0
android:ration=2000/>

然後我們還需要在主類裡面添加(如果你不想讓圖片自動播放,只想通過手勢來實現圖片播放那麼你需要把「為ViewFlipper添加動畫效果的代碼」刪掉):
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startX = event.getX();
break;
case MotionEvent.ACTION_MOVE://判斷向左滑動還是向右滑動
if (event.getX() - startX > 100) {
flipper.setInAnimation(this, R.anim.left_in);
flipper.setOutAnimation(this, R.anim.left_out);
flipper.showPrevious();
}else if (startX - event.getX() > 100) {
flipper.setInAnimation(this, R.anim.right_in);
flipper.setOutAnimation(this, R.anim.right_out);
flipper.showNext();
}

case MotionEvent.ACTION_UP:
break;

}
return super.onTouchEvent(event);
}

熱點內容
核心演算法版 發布:2025-02-25 19:07:39 瀏覽:719
os系統和安卓系統哪個更好 發布:2025-02-25 19:06:04 瀏覽:326
steam上有哪些不吃配置的賽車游戲 發布:2025-02-25 19:02:35 瀏覽:686
如何在百旺系統導出終端配置文件 發布:2025-02-25 19:02:34 瀏覽:580
電腦如何配置內網ip 發布:2025-02-25 18:53:53 瀏覽:901
如何自己製作游戲腳本軟體 發布:2025-02-25 18:32:01 瀏覽:808
1托8式存儲 發布:2025-02-25 18:24:57 瀏覽:684
安卓10彩蛋為什麼進不去 發布:2025-02-25 18:23:57 瀏覽:904
智能補貨演算法 發布:2025-02-25 18:18:59 瀏覽:514
無限游腳本 發布:2025-02-25 18:16:27 瀏覽:531