/* * Copyright (c) 2012. HappyDroids LLC, All rights reserved. */ package com.happydroids.droidtowers.amazon; import android.os.Handler; import android.util.DisplayMetrics; import com.badlogic.gdx.Gdx; import com.badlogic.gdx.backends.android.AndroidApplication; import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration; import com.happydroids.droidtowers.DroidTowersGame; import com.happydroids.droidtowers.gamestate.server.TowerGameService; import com.happydroids.droidtowers.platform.Display; import com.happydroids.platform.*; import com.happydroids.platform.purchase.AmazonAppStorePurchaseManager; public class DroidTowersAmazon extends AndroidApplication { private static final String TAG = DroidTowersAmazon.class.getSimpleName(); private Handler handler; public void onCreate(android.os.Bundle savedInstanceState) { super.onCreate(savedInstanceState); handler = new Handler(getMainLooper()); DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); // Display.setXHDPI(metrics.densityDpi == DisplayMetrics.DENSITY_XHIGH); // Display.setScaledDensity(metrics.densityDpi == DisplayMetrics.DENSITY_XHIGH ? 1.5f : 1f); Display.setScaledDensity(metrics.scaledDensity); TowerGameService.setDeviceType("android"); TowerGameService.setDeviceOSMarketName("amazon"); TowerGameService.setDeviceOSVersion("sdk" + getVersion()); AndroidApplicationConfiguration config = new AndroidApplicationConfiguration(); config.useGL20 = true; config.useWakelock = true; initialize(new DroidTowersGame(new Runnable() { @Override public void run() { Gdx.input.setCatchBackKey(true); Gdx.input.setCatchMenuKey(true); Platform.setDialogOpener(new AndroidDialogOpener(DroidTowersAmazon.this)); Platform.setConnectionMonitor(new PlatformConnectionMonitor()); Platform.setUncaughtExceptionHandler(new AndroidUncaughtExceptionHandler()); Platform.setBrowserUtil(new AndroidBrowserUtil(DroidTowersAmazon.this)); Platform.setPurchaseManager(new AmazonAppStorePurchaseManager(DroidTowersAmazon.this)); } }), config); } @Override protected void onStart() { super.onStart(); handler.postDelayed(new Runnable() { @Override public void run() { if (Platform.getPurchaseManager() != null) { Platform.getPurchaseManager().onStart(); } else { handler.postDelayed(this, 250); } } }, 250); } @Override protected void onResume() { super.onResume(); handler.postDelayed(new Runnable() { @Override public void run() { if (Platform.getPurchaseManager() != null) { Platform.getPurchaseManager().onResume(); } else { handler.postDelayed(this, 250); } } }, 250); } }