PhoneGap использовать Play Services для рекламы
Поскольку Google постепенно отказывается от выделенного Admob SDK в пользу Play Services SDK, как я могу интегрировать рекламу в свое приложение Phonegap с Play Services? Вскоре приложения Admob SDK даже не будут доступны в Play Store.
Спасибо
1 ответ
Я понял это некоторое время назад, но решил, что должен вернуться сюда и ответить на этот вопрос, если кто-нибудь задается вопросом на этот вопрос. Надеюсь, я включу все необходимое, чтобы это заработало.
Для начала вам нужно включить google-play-services_lib в ваш проект.
Затем в вашем основном классе (будет что-то вроде phoneGapAppName/platform /android/src/com/ myname/myApp/myApp.java)
Под кордовой импорт (import org.apache.cordova.*;
) добавлять:
import android.view.WindowManager;
import android.widget.LinearLayout;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;
Тогда в вашем основном публичном классе (что-то вроде public class myApp extends CordovaActivity
) заменить код по умолчанию на что-то вроде:
private AdView mAdView;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
super.loadUrl(Config.getStartUrl());
//super.loadUrl("file:///android_asset/www/index.html")
mAdView = new AdView(this);
mAdView.setAdUnitId("YOUR_ADD_UNIT_CODE");
mAdView.setAdSize(AdSize.BANNER);
LinearLayout layout = super.root;
layout.addView(mAdView);
layout.setHorizontalGravity(android.view.Gravity.CENTER_HORIZONTAL);
mAdView.loadAd(new AdRequest.Builder().build());
}
@Override
protected void onPause() {
mAdView.pause();
super.onPause();
}
@Override
protected void onResume() {
super.onResume();
mAdView.resume();
}
Возможно, вам также придется добавить что-то подобное в ваш AndroidManifest.xml
:
<activity
android:name="com.google.android.gms.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
Это то, что я сделал, и это прекрасно работает для меня, вам нужно будет адаптировать это к своему собственному приложению и выяснить некоторые из них самостоятельно, но это хорошая отправная точка.