v1.1.2: added an option to override silent mode on iOS
This commit is contained in:
@@ -3,6 +3,7 @@ package com.shatteredpixel.shatteredpixeldungeon.ios;
|
||||
import com.badlogic.gdx.Files;
|
||||
import com.badlogic.gdx.backends.iosrobovm.IOSApplication;
|
||||
import com.badlogic.gdx.backends.iosrobovm.IOSApplicationConfiguration;
|
||||
import com.badlogic.gdx.backends.iosrobovm.IOSPreferences;
|
||||
import com.badlogic.gdx.graphics.glutils.HdpiMode;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.SPDSettings;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.ShatteredPixelDungeon;
|
||||
@@ -18,12 +19,17 @@ import org.robovm.apple.foundation.NSAutoreleasePool;
|
||||
import org.robovm.apple.foundation.NSBundle;
|
||||
import org.robovm.apple.foundation.NSDictionary;
|
||||
import org.robovm.apple.foundation.NSException;
|
||||
import org.robovm.apple.foundation.NSMutableDictionary;
|
||||
import org.robovm.apple.foundation.NSObject;
|
||||
import org.robovm.apple.foundation.NSProcessInfo;
|
||||
import org.robovm.apple.foundation.NSString;
|
||||
import org.robovm.apple.glkit.GLKViewDrawableColorFormat;
|
||||
import org.robovm.apple.glkit.GLKViewDrawableDepthFormat;
|
||||
import org.robovm.apple.uikit.UIApplication;
|
||||
import org.robovm.apple.uikit.UIScreen;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class IOSLauncher extends IOSApplication.Delegate {
|
||||
@Override
|
||||
protected IOSApplication createApplication() {
|
||||
@@ -55,12 +61,32 @@ public class IOSLauncher extends IOSApplication.Delegate {
|
||||
|
||||
FileUtils.setDefaultFileProperties(Files.FileType.Local, "");
|
||||
|
||||
//sets up preferences early so they can be read.
|
||||
//this is mostly a copy-paste from IOSApplication.getPreferences
|
||||
File libraryPath = new File(System.getenv("HOME"), "Library");
|
||||
File finalPath = new File(libraryPath, SPDSettings.DEFAULT_PREFS_FILE + ".plist");
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
NSMutableDictionary<NSString, NSObject> nsDictionary = (NSMutableDictionary<NSString, NSObject>)NSMutableDictionary
|
||||
.read(finalPath);
|
||||
|
||||
// if it fails to get an existing dictionary, create a new one.
|
||||
if (nsDictionary == null) {
|
||||
nsDictionary = new NSMutableDictionary<NSString, NSObject>();
|
||||
nsDictionary.write(finalPath, false);
|
||||
}
|
||||
SPDSettings.set(new IOSPreferences(nsDictionary, finalPath.getAbsolutePath()));
|
||||
//end of prefs setup
|
||||
|
||||
IOSApplicationConfiguration config = new IOSApplicationConfiguration();
|
||||
|
||||
config.colorFormat = GLKViewDrawableColorFormat.RGBA8888;
|
||||
config.depthFormat = GLKViewDrawableDepthFormat.None;
|
||||
config.hdpiMode = HdpiMode.Pixels;
|
||||
|
||||
config.hideHomeIndicator = SPDSettings.fullscreen();
|
||||
config.overrideRingerSwitch = SPDSettings.ignoreSilentMode();
|
||||
|
||||
if (NSProcessInfo.getSharedProcessInfo().getOperatingSystemVersion().getMajorVersion() >= 11) {
|
||||
config.preferredFramesPerSecond = (int)(UIScreen.getMainScreen().getMaximumFramesPerSecond());
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.shatteredpixel.shatteredpixeldungeon.ios;
|
||||
|
||||
import com.badlogic.gdx.Gdx;
|
||||
import com.badlogic.gdx.backends.iosrobovm.IOSGraphics;
|
||||
import com.badlogic.gdx.backends.iosrobovm.objectal.OALSimpleAudio;
|
||||
import com.badlogic.gdx.graphics.Pixmap;
|
||||
import com.badlogic.gdx.graphics.Texture;
|
||||
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
||||
@@ -66,6 +67,11 @@ public class IOSPlatformSupport extends PlatformSupport {
|
||||
AudioServices.playSystemSound(1520);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setHonorSilentSwitch( boolean value ) {
|
||||
OALSimpleAudio.sharedInstance().setHonorSilentSwitch(value);
|
||||
}
|
||||
|
||||
/* FONT SUPPORT */
|
||||
|
||||
//custom pixel font, for use with Latin and Cyrillic languages
|
||||
|
||||
Reference in New Issue
Block a user