Skip to content

Commit

Permalink
add a silent mode for app start
Browse files Browse the repository at this point in the history
  • Loading branch information
afischerdev committed Jul 10, 2023
1 parent 086503e commit 0fbf6ea
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,8 @@ public class BRouterActivity extends AppCompatActivity implements ActivityCompat
private String errorMessage;
private String title;
private int wpCount;
private boolean startSilent;

ActivityResultLauncher<Intent> someActivityResultLauncher;

/**
Expand Down Expand Up @@ -115,9 +117,12 @@ public void onActivityResult(ActivityResult result) {
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
int memoryClass = am.getMemoryClass();

Intent i = getIntent();
if (i.hasExtra("runsilent")) startSilent = true;
// startQuiete = true;
// instantiate our simulation view and set it as the activity's content
mBRouterView = new BRouterView(this, memoryClass);
mBRouterView.init();
mBRouterView.init(startSilent);
setContentView(mBRouterView);
}

Expand All @@ -139,7 +144,7 @@ public void onClick(DialogInterface dialog, int item) {
case DIALOG_MAINACTION_ID:
builder.setTitle("Select Main Action");
builder.setItems(
new String[] { "Download Manager", "BRouter App" },
new String[]{"Download Manager", "BRouter App"},
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
if (item == 0)
Expand Down Expand Up @@ -238,7 +243,7 @@ public void onClick(DialogInterface dialog, int id) {
builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String basedir = input.getText().toString();
mBRouterView.startSetup(new File(basedir), true);
mBRouterView.startSetup(new File(basedir), true, false);
}
});
return builder.create();
Expand All @@ -254,7 +259,7 @@ public void onClick(DialogInterface dialog, int item) {
builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
if (selectedBasedir < availableBasedirs.size()) {
mBRouterView.startSetup(availableBasedirs.get(selectedBasedir), true);
mBRouterView.startSetup(availableBasedirs.get(selectedBasedir), true, false);
} else {
showADialog(DIALOG_TEXTENTRY_ID);
}
Expand Down Expand Up @@ -530,7 +535,14 @@ public void selectBasedir(ArrayList<File> items, String message) {
basedirOptions[bdidx] = "Enter path manually";
}

showADialog(DIALOG_SELECTBASEDIR_ID);
if (startSilent) {
mBRouterView.startSetup(availableBasedirs.get(0), true, startSilent);
Intent intent = new Intent(BRouterActivity.this, BInstallerActivity.class);
startActivity(intent);
finish();
} else {
showADialog(DIALOG_SELECTBASEDIR_ID);
}
}

public void selectRoutingModes(String[] modes, boolean[] modesChecked, String message) {
Expand Down Expand Up @@ -650,9 +662,9 @@ public void onRequestPermissionsResult(int requestCode, @NonNull String[] permis
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == 0) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
mBRouterView.startSetup(null, true);
mBRouterView.startSetup(null, true, false);
} else {
mBRouterView.init();
mBRouterView.init(false);
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ public void stopRouting() {
if (cr != null) cr.terminate();
}

public void init() {
public void init(boolean silent) {
try {
// get base dir from private file
File baseDir = ConfigHelper.getBaseDir(getContext());
Expand All @@ -107,7 +107,7 @@ public void init() {
String version = "v" + getContext().getString(R.string.app_version);
File vFile = new File(brd, "profiles2/" + version);
if (vFile.exists()) {
startSetup(baseDir, false);
startSetup(baseDir, false, silent);
return;
}
String message = "(previous basedir " + baseDir + " has to migrate )";
Expand All @@ -117,7 +117,7 @@ public void init() {
waitingForMigration = true;
oldMigrationPath = brd.getAbsolutePath();
} else {
startSetup(baseDir, false);
startSetup(baseDir, false, silent);
}
return;
}
Expand All @@ -137,7 +137,7 @@ public void init() {
}
}

public void startSetup(File baseDir, boolean storeBasedir) {
public void startSetup(File baseDir, boolean storeBasedir, boolean silent) {
if (baseDir == null) {
baseDir = retryBaseDir;
retryBaseDir = null;
Expand Down Expand Up @@ -239,6 +239,12 @@ public void run() {
throw new IllegalArgumentException("The profile-directory " + profileDir + " contains no routing profiles (*.brf)."
+ " see brouter.de/brouter for setup instructions.");
}
if (silent) {
Intent intent = new Intent(getContext(), BInstallerActivity.class);
getContext().startActivity(intent);
return;
};

if (!RoutingHelper.hasDirectoryAnyDatafiles(segmentDir)) {
((BRouterActivity) getContext()).startDownloadManager();
waitingForSelection = true;
Expand Down

0 comments on commit 0fbf6ea

Please sign in to comment.