Made PlatformFunction an interface, changed permission requests
This commit is contained in:
@@ -5,8 +5,8 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
|
import android.os.Bundle;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
import com.badlogic.gdx.backends.android.AndroidApplication;
|
import com.badlogic.gdx.backends.android.AndroidApplication;
|
||||||
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
|
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
|
||||||
@@ -31,12 +31,6 @@ public class AndroidLauncher extends AndroidApplication{
|
|||||||
protected void onCreate(Bundle savedInstanceState){
|
protected void onCreate(Bundle savedInstanceState){
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
|
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
|
||||||
if (this.checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
|
|
||||||
this.requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, WRITE_REQUEST_CODE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
|
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
|
||||||
config.useImmersiveMode = true;
|
config.useImmersiveMode = true;
|
||||||
|
|
||||||
@@ -66,12 +60,6 @@ public class AndroidLauncher extends AndroidApplication{
|
|||||||
TextFieldDialogListener.add(field);
|
TextFieldDialogListener.add(field);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void updateRPC() { }
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onGameExit() { }
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void openDonations() {
|
public void openDonations() {
|
||||||
showDonations();
|
showDonations();
|
||||||
@@ -80,13 +68,26 @@ public class AndroidLauncher extends AndroidApplication{
|
|||||||
@Override
|
@Override
|
||||||
public void requestWritePerms() {
|
public void requestWritePerms() {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||||
if (checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
|
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED &&
|
||||||
requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, WRITE_REQUEST_CODE);
|
checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
|
||||||
|
requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE,
|
||||||
|
Manifest.permission.READ_EXTERNAL_STORAGE}, WRITE_REQUEST_CODE);
|
||||||
|
}else{
|
||||||
|
|
||||||
|
if (checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
|
||||||
|
requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, WRITE_REQUEST_CODE);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
|
||||||
|
requestPermissions(new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, WRITE_REQUEST_CODE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Mindustry.platforms.requestWritePerms();
|
||||||
|
|
||||||
if(doubleScaleTablets && isTablet(this.getContext())){
|
if(doubleScaleTablets && isTablet(this.getContext())){
|
||||||
Unit.dp.addition = 0.5f;
|
Unit.dp.addition = 0.5f;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,24 +14,13 @@ import io.anuke.ucore.core.Core;
|
|||||||
import io.anuke.ucore.core.Inputs;
|
import io.anuke.ucore.core.Inputs;
|
||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
import io.anuke.ucore.modules.ModuleCore;
|
import io.anuke.ucore.modules.ModuleCore;
|
||||||
import io.anuke.ucore.scene.ui.TextField;
|
|
||||||
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
|
|
||||||
public class Mindustry extends ModuleCore {
|
public class Mindustry extends ModuleCore {
|
||||||
public static boolean hasDiscord = true;
|
public static boolean hasDiscord = true;
|
||||||
public static Array<String> args = new Array<>();
|
public static Array<String> args = new Array<>();
|
||||||
public static PlatformFunction platforms = new PlatformFunction(){
|
public static PlatformFunction platforms = new PlatformFunction(){};
|
||||||
@Override public String format(Date date){ return "invalid date"; }
|
|
||||||
@Override public String format(int number){ return number + ""; }
|
|
||||||
@Override public void openLink(String link){ }
|
|
||||||
@Override public void addDialog(TextField field){}
|
|
||||||
@Override public void updateRPC() {}
|
|
||||||
@Override public void onGameExit() {}
|
|
||||||
@Override public void openDonations() {}
|
|
||||||
@Override public void requestWritePerms() {}
|
|
||||||
};
|
|
||||||
public static OrderedMap<String, Integer> idMap = new OrderedMap<>();
|
public static OrderedMap<String, Integer> idMap = new OrderedMap<>();
|
||||||
|
|
||||||
public static boolean externalBundle = false;
|
public static boolean externalBundle = false;
|
||||||
|
|||||||
@@ -4,13 +4,13 @@ import io.anuke.ucore.scene.ui.TextField;
|
|||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
public interface PlatformFunction{
|
public abstract class PlatformFunction{
|
||||||
public String format(Date date);
|
public String format(Date date){return "invalid";}
|
||||||
public String format(int number);
|
public String format(int number){return "invalid";}
|
||||||
public void openLink(String link);
|
public void openLink(String link){}
|
||||||
public void addDialog(TextField field);
|
public void addDialog(TextField field){}
|
||||||
public void updateRPC();
|
public void updateRPC(){}
|
||||||
public void onGameExit();
|
public void onGameExit(){}
|
||||||
public void openDonations();
|
public void openDonations(){}
|
||||||
public void requestWritePerms();
|
public void requestWritePerms(){}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,9 +40,7 @@ public class FileChooser extends FloatingDialog{
|
|||||||
this.selectListener = result;
|
this.selectListener = result;
|
||||||
setupWidgets();
|
setupWidgets();
|
||||||
|
|
||||||
if(!open){
|
Mindustry.platforms.requestWritePerms();
|
||||||
Mindustry.platforms.requestWritePerms();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setupWidgets(){
|
private void setupWidgets(){
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ import io.anuke.mindustry.core.GameState;
|
|||||||
import io.anuke.mindustry.core.GameState.State;
|
import io.anuke.mindustry.core.GameState.State;
|
||||||
import io.anuke.mindustry.io.PlatformFunction;
|
import io.anuke.mindustry.io.PlatformFunction;
|
||||||
import io.anuke.mindustry.net.Net;
|
import io.anuke.mindustry.net.Net;
|
||||||
import io.anuke.ucore.scene.ui.TextField;
|
|
||||||
import io.anuke.ucore.util.Strings;
|
import io.anuke.ucore.util.Strings;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -67,10 +66,6 @@ public class DesktopLauncher {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void addDialog(TextField field){}
|
|
||||||
@Override public void openDonations(){}
|
|
||||||
@Override public void requestWritePerms(){}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateRPC() {
|
public void updateRPC() {
|
||||||
DiscordRichPresence presence = new DiscordRichPresence();
|
DiscordRichPresence presence = new DiscordRichPresence();
|
||||||
|
|||||||
@@ -17,7 +17,6 @@ import com.google.gwt.user.client.Window;
|
|||||||
import com.google.gwt.user.client.ui.*;
|
import com.google.gwt.user.client.ui.*;
|
||||||
import io.anuke.mindustry.Mindustry;
|
import io.anuke.mindustry.Mindustry;
|
||||||
import io.anuke.mindustry.io.PlatformFunction;
|
import io.anuke.mindustry.io.PlatformFunction;
|
||||||
import io.anuke.ucore.scene.ui.TextField;
|
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
@@ -109,12 +108,6 @@ public class HtmlLauncher extends GwtApplication {
|
|||||||
public void openLink(String link){
|
public void openLink(String link){
|
||||||
Window.open(link, "_blank", "");
|
Window.open(link, "_blank", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override public void updateRPC() {}
|
|
||||||
@Override public void onGameExit() {}
|
|
||||||
@Override public void addDialog(TextField field){}
|
|
||||||
@Override public void openDonations(){}
|
|
||||||
@Override public void requestWritePerms() {}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return new Mindustry();
|
return new Mindustry();
|
||||||
|
|||||||
Reference in New Issue
Block a user