Porto Android 內文全屏廣告

SDK Document

若需在 Android 應用程式中呈現 ClickForce 廣告,只要在您的 專案中導入 SDK,然後在使用者介面中加入相關指令就行了。

SDK導入說明

加入ClickForce 內文全屏廣告前,需先下載Android SDK檔案,即進行解壓縮程序,包含了一個jar檔,並完成以下前置步驟:


A.在內文全屏廣告專案中加入 MFAD-*.*.*.jar

B.加入Google Play Service

C.設定AndroidManifest.xml

D.設定 layout xml

基本設定


引入SDK

在 Android Studio 專案中加入 MFAD-*.*.*.jar

1. 複製解壓縮的 JAR 檔貼上到 libs 資料夾




2. 回到 Android 專案,libs 會多出一個 JAR 檔案,對它按下右鍵選擇Add as library 。之後可至 build.gradle 確認是否有加入成功。
如範例顯示,將會有一行 compile files(‘libs/MFAD-*.*.*.jar’) 表示 JAR 被讀到了


加入Google Play Service


在 Android Studio 專案層級的 build.gradle 中,加入Google Mobile Ads SDK。並請加入maven指令。

        .
        .
        ..
        ...
        versionName "1.0 "
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner "
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

 allprojects {
     repositories {
         jcenter()
         maven {
             url "https://maven.google.com "
         }
     }
}

 dependencies {
  compile fileTree(include: ['*.jar'], dir: 'libs')
  androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
       exclude group: 'com.android.support', module: 'support-annotations'
 })
  compile 'com.android.support:appcompat-v7:25.3.1'
  compile 'com.android.support.constraint:constraint-layout:1.0.2'
  compile 'com.google.android.gms:play-services-ads:17.2.0'
  testCompile 'junit:junit:4.12'
  implementation files('libs/MFAD-*.*.*.jar')
}
 

設定AndroidManifest.xml

INTERNET

必要。用來存取網路,以發出廣告請求。


ACCESS_WIFI_STATE

必要。允許訪問Wi-Fi網路狀態信息。


ACCESS_NETWORK_STATE

必要。用來在發出廣告請求前,先行檢查是否有可用的網路連結。


READ_PHONE_STATE

必要。讀取手機狀態,並用來在發出電話請求前,先行檢查是否有可以進行通話。


ACCESS_COARSE_LOCATION

必要。允許訪問粗略性位置,以取得地理相關的廣告。


加入至 AndroidManifest.xml 中


    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />



加進參考 Google Play 服務版本的 <meta-data> 代碼,Android 可藉此瞭解應用程式預期要用的服務版本。

由於Google Play Services 17.0.0 開始需在 <meta-data> 代碼裡加上 AD_MANAGER_APP,如下圖第二段 meat 代碼內。


   <application
        android:allowBackup="true "
        android:icon="@mipmap/ic_launcher "
        android:label="@string/app_name "
        android:roundIcon="@mipmap/ic_launcher_round "
        android:supportsRtl="true "
        android:theme="@style/AppTheme ">
        <activity android:name=".MainActivity ">
            <intent-filter>
                <action android:name="android.intent.action.MAIN " />

                <category android:name="android.intent.category.LAUNCHER " />
            </intent-filter>
       </activity>
	<meta-data
	   android:name="com.google.android.gms.version"
	   android:value="@integer/google_play_services_version" />
	<meta-data
	   android:name="com.google.android.gms.ads.AD_MANAGER_APP"
	   android:value="true" />
    </application>

    

ACCESS_FINE_LOCATION

選用。允許訪問精準性定位,以提供更精準的定位取得地理相關的廣告。


WAKE_LOCK

選用。


WRITE_EXTERNAL_STORAGE

選用。允許寫入外部儲存裝置,與其他權限互相搭配,以取得更多樣性互動的廣告。


CALL_PHONE

選用。用來發出打電話請求,提供使用者更多的廣告資訊。


加入至 AndroidManifest.xml 中


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



設定 layout xml


使用內文全屏廣告 ,必需在放置廣告頁面的layout xml 中,加入 clickforce.ad.AdInnerInterstitalView


  <com.clickforce.ad.AdInnerInterstitalView
     android:id="@+id/innerItstl"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content">
  </com.clickforce.ad.AdInnerInterstitalView>



開始建立 內文全屏廣告

AdInnerInterstitalView 參數設定與說明


初始化

Parameters

開始請求廣告

Parameters

設定廣告版位ID


顯示廣告


* 以下為選擇使用方法

AdInnerInterstitalView 屬性說明

設定是否輸出除錯(debug)訊息 : (true / false)



廣告位置調整( - : DOWN )


AdInnerInterstitalViewListener 說明


  
   @Override
   public void onFailToInnerFullAd() {
 	  //於請求內文全屏廣告失敗
   }
   @Override
   public void onSuccessToInnerFullAd() {
	  //於請求內文全屏廣告成功,呈現廣告
   }
   @Override
   public void onClickToInnerFullAd() {
	  //於點擊內文全屏廣告後執行   
   }



宣告及引入

加入內文全屏廣告會用到程式碼如下:

   
public class MainActivity extends AppCompatActivity {

   private AdInnerInterstitalView adInnerItstl;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       adInnerItstl = (AdInnerInterstitalView) findViewById(R.id.innerItstl);
       adInnerItstl.init(this);
       adInnerItstl.getInnerFullScreenAd(9702);
       adInnerItstl.AbsoluteErrorValueY = 100;
       adInnerItstl.outputDebugInfo = true;
       adInnerItstl.setOnAdInnerInterstitalViewListener(new AdInnerInterstitalViewListener() {
           @Override
           public void onFailToInnerFullAd() {
               Log.d("Clickforce","onFailToInnerFullAd");
           }

           @Override
           public void onSuccessToInnerFullAd() {
               Log.d("Clickforce","onSuccessToInnerFullAd");
               adInnerItstl.show();
           }

           @Override
           public void onClickToInnerFullAd() {
               Log.d("Clickforce","onClickToInnerFullAd");
           }
        });

    }
}


取得結果



show date