Java 类com.badlogic.gdx.backends.android.surfaceview.FillResolutionStrategy 实例源码

项目:ingress-indonesia-dev    文件:AndroidApplication.java   
public View initializeForView(ApplicationListener paramApplicationListener, AndroidApplicationConfiguration paramAndroidApplicationConfiguration)
{
  if (paramAndroidApplicationConfiguration.resolutionStrategy == null);
  for (Object localObject = new FillResolutionStrategy(); ; localObject = paramAndroidApplicationConfiguration.resolutionStrategy)
  {
    this.graphics = new AndroidGraphics(this, paramAndroidApplicationConfiguration, (ResolutionStrategy)localObject);
    this.input = new AndroidInput(this, this.graphics.view, paramAndroidApplicationConfiguration);
    this.audio = new AndroidAudio(this, paramAndroidApplicationConfiguration);
    this.files = new AndroidFiles(getAssets(), getFilesDir().getAbsolutePath());
    this.listener = paramApplicationListener;
    this.handler = new Handler();
    Gdx.app = this;
    Gdx.input = getInput();
    Gdx.audio = getAudio();
    Gdx.files = getFiles();
    Gdx.graphics = getGraphics();
    createWakeLock(paramAndroidApplicationConfiguration);
    return this.graphics.getView();
  }
}
项目:libgdxcn    文件:AndroidLiveWallpaper.java   
public void initialize (ApplicationListener listener, AndroidApplicationConfiguration config) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
    }
    graphics = new AndroidGraphicsLiveWallpaper(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
        : config.resolutionStrategy);

    // factory in use, but note: AndroidInputFactory causes exceptions when obfuscated: java.lang.RuntimeException: Couldn't
    // construct AndroidInput, this should never happen, proguard deletes constructor used only by reflection
    input = AndroidInputFactory.newAndroidInput(this, this.getService(), graphics.view, config);
    // input = new AndroidInput(this, this.getService(), null, config);

    audio = new AndroidAudio(this.getService(), config);

    // added initialization of android local storage: /data/data/<app package>/files/
    this.getService().getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getService().getAssets(), this.getService().getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;

    // Unlike activity, fragment and daydream applications there's no need for a specialized audio listener.
    // See description in onPause method.

    Gdx.app = this;
    Gdx.input = input;
    Gdx.audio = audio;
    Gdx.files = files;
    Gdx.graphics = graphics;
    Gdx.net = net;
}
项目:ZombieInvadersVR    文件:CardBoardAndroidApplication.java   
private void init (ApplicationListener listener, AndroidApplicationConfiguration config, boolean isForView) {
   if (this.getVersion() < MINIMUM_SDK) {
      throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
   }
   graphics = new CardBoardGraphics(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
      : config.resolutionStrategy);
   input = AndroidInputFactory.newAndroidInput(this, this, graphics.view, config);
   audio = new AndroidAudio(this, config);
   this.getFilesDir(); // workaround for Android bug #10515463
   files = new AndroidFiles(this.getAssets(), this.getFilesDir().getAbsolutePath());
   net = new AndroidNet(this);
   this.listener = listener;
   this.handler = new Handler();
   this.useImmersiveMode = config.useImmersiveMode;
   this.hideStatusBar = config.hideStatusBar;

   // Add a specialized audio lifecycle listener
   addLifecycleListener(new LifecycleListener() {

      @Override
      public void resume () {
         // No need to resume audio here
      }

      @Override
      public void pause () {
         audio.pause();
      }

      @Override
      public void dispose () {
         audio.dispose();
      }
   });

   Gdx.app = this;
   Gdx.input = this.getInput();
   Gdx.audio = this.getAudio();
   Gdx.files = this.getFiles();
   Gdx.graphics = this.getGraphics();
   Gdx.net = this.getNet();

   if (!isForView) {
      try {
         requestWindowFeature(Window.FEATURE_NO_TITLE);
      } catch (Exception ex) {
         log("AndroidApplication", "Content already displayed, cannot request FEATURE_NO_TITLE", ex);
      }
      getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
      getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
      setContentView(graphics.getView(), createLayoutParams());
      setCardboardView((CardboardView)graphics.getView());
   }

   createWakeLock(config.useWakelock);
   hideStatusBar(this.hideStatusBar);
   useImmersiveMode(this.useImmersiveMode);
   if (this.useImmersiveMode && getVersion() >= Build.VERSION_CODES.KITKAT) {
      try {
         Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
         Object o = vlistener.newInstance();
         Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
         method.invoke(o, this);
      } catch (Exception e) {
         log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
      }
   }
}
项目:thunderboard-android    文件:GdxDemoActivity.java   
private void init(ApplicationListener listener, AndroidApplicationConfiguration config, boolean isForView) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
    }
    graphics = new AndroidGraphics(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
            : config.resolutionStrategy);
    input = AndroidInputFactory.newAndroidInput(this, this.getContext(), graphics.getView(), config);
    audio = new AndroidAudio(this.getContext(), config);
    this.getContext().getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getContext().getAssets(), this.getContext().getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();
    this.useImmersiveMode = config.useImmersiveMode;
    this.hideStatusBar = config.hideStatusBar;

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume() {
            // No need to resume audio here
        }

        @Override
        public void pause() {
            audio.pause();
        }

        @Override
        public void dispose() {
            audio.dispose();
        }
    });

    Gdx.app = this;
    Gdx.input = this.getInput();
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();

    if (!isForView) {
        try {
            supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        } catch (Exception ex) {
            log("AndroidApplication", "Content already displayed, cannot request FEATURE_NO_TITLE", ex);
        }

        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
        setContentView(graphics.getView(), createLayoutParams());
    }

    createWakeLock(config.useWakelock);
    hideStatusBar(this.hideStatusBar);
    useImmersiveMode(this.useImmersiveMode);
    if (this.useImmersiveMode && getVersion() >= Build.VERSION_CODES.KITKAT) {
        try {
            Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
            Object o = vlistener.newInstance();
            Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
            method.invoke(o, this);
        } catch (Exception e) {
            log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
        }
    }
}
项目:libgdxcn    文件:AndroidApplication.java   
private void init (ApplicationListener listener, AndroidApplicationConfiguration config, boolean isForView) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
    }
    graphics = new AndroidGraphics(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
        : config.resolutionStrategy);
    input = AndroidInputFactory.newAndroidInput(this, this, graphics.view, config);
    audio = new AndroidAudio(this, config);
    this.getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getAssets(), this.getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();
    this.useImmersiveMode = config.useImmersiveMode;
    this.hideStatusBar = config.hideStatusBar;

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume () {
            // No need to resume audio here
        }

        @Override
        public void pause () {
            audio.pause();
        }

        @Override
        public void dispose () {
            audio.dispose();
        }
    });

    Gdx.app = this;
    Gdx.input = this.getInput();
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();

    if (!isForView) {
        try {
            requestWindowFeature(Window.FEATURE_NO_TITLE);
        } catch (Exception ex) {
            log("AndroidApplication", "Content already displayed, cannot request FEATURE_NO_TITLE", ex);
        }
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
        setContentView(graphics.getView(), createLayoutParams());
    }

    createWakeLock(config.useWakelock);
    hideStatusBar(this.hideStatusBar);
    useImmersiveMode(this.useImmersiveMode);
    if (this.useImmersiveMode && getVersion() >= Build.VERSION_CODES.KITKAT) {
        try {
            Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
            Object o = vlistener.newInstance();
            Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
            method.invoke(o, this);
        } catch (Exception e) {
            log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
        }
    }
}
项目:libgdxcn    文件:AndroidFragmentApplication.java   
/** This method has to be called in the
 * {@link Fragment#onCreateView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)} method. It sets up all
 * the things necessary to get input, render via OpenGL and so on. You can configure other aspects of the application with the
 * rest of the fields in the {@link AndroidApplicationConfiguration} instance.
 * <p/>
 * Note: you have to return the returned view from
 * {@link Fragment#onCreateView(android.view.LayoutInflater, android.view.ViewGroup, android.os.Bundle)}
 * 
 * @param listener the {@link ApplicationListener} implementing the program logic
 * @param config the {@link AndroidApplicationConfiguration}, defining various settings of the application (use accelerometer,
 *           etc.).
 * @return the GLSurfaceView of the application */
public View initializeForView (ApplicationListener listener, AndroidApplicationConfiguration config) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
    }
    graphics = new AndroidGraphics(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
        : config.resolutionStrategy);
    input = AndroidInputFactory.newAndroidInput(this, getActivity(), graphics.view, config);
    audio = new AndroidAudio(getActivity(), config);
    files = new AndroidFiles(getResources().getAssets(), getActivity().getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume () {
            audio.resume();
        }

        @Override
        public void pause () {
            audio.pause();
        }

        @Override
        public void dispose () {
            audio.dispose();
        }
    });

    Gdx.app = this;
    Gdx.input = this.getInput();
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();
    createWakeLock(config.useWakelock);
    useImmersiveMode(config.useImmersiveMode);
    if (config.useImmersiveMode && getVersion() >= Build.VERSION_CODES.KITKAT) {
        try {
            Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
            Object o = vlistener.newInstance();
            Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
            method.invoke(o, this);
        } catch (Exception e) {
            log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
        }
    }
    return graphics.getView();
}
项目:libgdxcn    文件:AndroidDaydream.java   
private void init (ApplicationListener listener, AndroidApplicationConfiguration config, boolean isForView) {
    graphics = new AndroidGraphics(this, config, config.resolutionStrategy == null ? new FillResolutionStrategy()
        : config.resolutionStrategy);
    input = AndroidInputFactory.newAndroidInput(this, this, graphics.view, config);
    audio = new AndroidAudio(this, config);
    this.getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getAssets(), this.getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume () {
            audio.resume();
        }

        @Override
        public void pause () {
            audio.pause();
        }

        @Override
        public void dispose () {
            audio.dispose();
            audio = null;
        }
    });

    Gdx.app = this;
    Gdx.input = this.getInput();
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();

    if (!isForView) {
        setFullscreen(true);
        setContentView(graphics.getView(), createLayoutParams());
    }

    createWakeLock(config.useWakelock);
    hideStatusBar(config);
}
项目:shadow-engine    文件:MainActivity.java   
@Override
/**
 * {@inheritDoc}
 */
public void initialize(ApplicationListener listener, AndroidApplicationConfiguration config) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("LibGDX requires Android API Level " + MINIMUM_SDK + " or later.");
    }

    //Reordered to make using Gdx.app, Gdx.graphics etc possible (due to AndroidBackend.getGdxInput)

    graphics = new AndroidGraphics(this, config,
            config.resolutionStrategy == null ? new FillResolutionStrategy() : config.resolutionStrategy);
    audio = new AndroidAudio(this, config);
    this.getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getAssets(), this.getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();
    this.useImmersiveMode = config.useImmersiveMode;
    this.hideStatusBar = config.hideStatusBar;

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume () {
            // No need to resume audio here
        }

        @Override
        public void pause () {
            //audio.pause(); //screw it, world shall explode as I can't change it...
        }

        @Override
        public void dispose () {
            audio.dispose();
        }
    });

    Gdx.app = this;
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();

    input = ((AndroidBackend)BackendHelper.backend).getGdxInput();
    if (input == null) {
        input = AndroidInputFactory.newAndroidInput(this, this, graphics.getView(), config);
    }

    Gdx.input = this.getInput();

    try {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
    } catch (Exception ex) {
        log("AndroidApplication", "Content already displayed, cannot request FEATURE_NO_TITLE", ex);
    }
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
    setContentView(graphics.getView(), createLayoutParams());

    createWakeLock(config.useWakelock);
    hideStatusBar(this.hideStatusBar);
    useImmersiveMode(this.useImmersiveMode);
    if (this.useImmersiveMode && getVersion() >= 19) {
        try {
            Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
            Object o = vlistener.newInstance();
            Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
            method.invoke(o, this);
        } catch (Exception e) {
            log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
        }
    }
}
项目:mini2Dx    文件:AndroidMini2DxGame.java   
private void init(ApplicationListener listener, AndroidMini2DxConfig config, boolean isForView) {
    if (this.getVersion() < MINIMUM_SDK) {
        throw new GdxRuntimeException("mini2Dx requires Android API Level " + MINIMUM_SDK + " or later.");
    }
    setApplicationLogger(new AndroidApplicationLogger());
    graphics = new AndroidMini2DxGraphics(this, config,
            config.resolutionStrategy == null ? new FillResolutionStrategy() : config.resolutionStrategy);
    input = AndroidInputFactory.newAndroidInput(this, this, graphics.view, config);
    audio = new AndroidAudio(this, config);
    this.getFilesDir(); // workaround for Android bug #10515463
    files = new AndroidFiles(this.getAssets(), this.getFilesDir().getAbsolutePath());
    net = new AndroidNet(this);
    this.listener = listener;
    this.handler = new Handler();
    this.useImmersiveMode = config.useImmersiveMode;
    this.hideStatusBar = config.hideStatusBar;
    this.clipboard = new AndroidClipboard(this);

    // Add a specialized audio lifecycle listener
    addLifecycleListener(new LifecycleListener() {

        @Override
        public void resume() {
            // No need to resume audio here
        }

        @Override
        public void pause() {
            audio.pause();
        }

        @Override
        public void dispose() {
            audio.dispose();
        }
    });

    Gdx.app = this;
    Gdx.input = this.getInput();
    Gdx.audio = this.getAudio();
    Gdx.files = this.getFiles();
    Gdx.graphics = this.getGraphics();
    Gdx.net = this.getNet();

    if (!isForView) {
        try {
            requestWindowFeature(Window.FEATURE_NO_TITLE);
        } catch (Exception ex) {
            log("AndroidApplication", "Content already displayed, cannot request FEATURE_NO_TITLE", ex);
        }
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
        setContentView(graphics.getView(), createLayoutParams());
    }

    createWakeLock(config.useWakelock);
    hideStatusBar(this.hideStatusBar);
    useImmersiveMode(this.useImmersiveMode);
    if (this.useImmersiveMode && getVersion() >= Build.VERSION_CODES.KITKAT) {
        try {
            Class<?> vlistener = Class.forName("com.badlogic.gdx.backends.android.AndroidVisibilityListener");
            Object o = vlistener.newInstance();
            Method method = vlistener.getDeclaredMethod("createListener", AndroidApplicationBase.class);
            method.invoke(o, this);
        } catch (Exception e) {
            log("AndroidApplication", "Failed to create AndroidVisibilityListener", e);
        }
    }
}