mirror of
https://github.com/fankes/termux-app.git
synced 2025-09-06 02:35:19 +08:00
Added: Add message to bootstrap error if user installed termux on portable/external/removable sd card since its not supported on some devices
This commit is contained in:
@@ -73,7 +73,8 @@ final class TermuxInstaller {
|
|||||||
// Termux can only be run as the primary user (device owner) since only that
|
// Termux can only be run as the primary user (device owner) since only that
|
||||||
// account has the expected file system paths. Verify that:
|
// account has the expected file system paths. Verify that:
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && !PackageUtils.isCurrentUserThePrimaryUser(activity)) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && !PackageUtils.isCurrentUserThePrimaryUser(activity)) {
|
||||||
bootstrapErrorMessage = activity.getString(R.string.bootstrap_error_not_primary_user_message, MarkdownUtils.getMarkdownCodeForString(TERMUX_PREFIX_DIR_PATH, false));
|
bootstrapErrorMessage = activity.getString(R.string.bootstrap_error_not_primary_user_message,
|
||||||
|
MarkdownUtils.getMarkdownCodeForString(TERMUX_PREFIX_DIR_PATH, false));
|
||||||
Logger.logError(LOG_TAG, "isFilesDirectoryAccessible: " + isFilesDirectoryAccessible);
|
Logger.logError(LOG_TAG, "isFilesDirectoryAccessible: " + isFilesDirectoryAccessible);
|
||||||
Logger.logError(LOG_TAG, bootstrapErrorMessage);
|
Logger.logError(LOG_TAG, bootstrapErrorMessage);
|
||||||
sendBootstrapCrashReportNotification(activity, bootstrapErrorMessage);
|
sendBootstrapCrashReportNotification(activity, bootstrapErrorMessage);
|
||||||
@@ -84,7 +85,14 @@ final class TermuxInstaller {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!isFilesDirectoryAccessible) {
|
if (!isFilesDirectoryAccessible) {
|
||||||
bootstrapErrorMessage = Error.getMinimalErrorString(filesDirectoryAccessibleError) + "\nTERMUX_FILES_DIR: " + MarkdownUtils.getMarkdownCodeForString(TermuxConstants.TERMUX_FILES_DIR_PATH, false);
|
bootstrapErrorMessage = Error.getMinimalErrorString(filesDirectoryAccessibleError);
|
||||||
|
//noinspection SdCardPath
|
||||||
|
if (PackageUtils.isAppInstalledOnExternalStorage(activity) &&
|
||||||
|
!TermuxConstants.TERMUX_FILES_DIR_PATH.equals(activity.getFilesDir().getAbsolutePath().replaceAll("^/data/user/0/", "/data/data/"))) {
|
||||||
|
bootstrapErrorMessage += "\n\n" + activity.getString(R.string.bootstrap_error_installed_on_portable_sd,
|
||||||
|
MarkdownUtils.getMarkdownCodeForString(TERMUX_PREFIX_DIR_PATH, false));
|
||||||
|
}
|
||||||
|
|
||||||
Logger.logError(LOG_TAG, bootstrapErrorMessage);
|
Logger.logError(LOG_TAG, bootstrapErrorMessage);
|
||||||
sendBootstrapCrashReportNotification(activity, bootstrapErrorMessage);
|
sendBootstrapCrashReportNotification(activity, bootstrapErrorMessage);
|
||||||
MessageDialogUtils.showMessage(activity,
|
MessageDialogUtils.showMessage(activity,
|
||||||
|
@@ -33,7 +33,11 @@
|
|||||||
<string name="bootstrap_error_try_again">Try again</string>
|
<string name="bootstrap_error_try_again">Try again</string>
|
||||||
<string name="bootstrap_error_not_primary_user_message">&TERMUX_APP_NAME; can only be run as the primary user.
|
<string name="bootstrap_error_not_primary_user_message">&TERMUX_APP_NAME; can only be run as the primary user.
|
||||||
\nBootstrap binaries compiled for &TERMUX_APP_NAME; have hardcoded $PREFIX path and cannot be installed
|
\nBootstrap binaries compiled for &TERMUX_APP_NAME; have hardcoded $PREFIX path and cannot be installed
|
||||||
under any path other than %1$s.</string>
|
under any path other than:\n%1$s.</string>
|
||||||
|
<string name="bootstrap_error_installed_on_portable_sd">&TERMUX_APP_NAME; cannot be installed on
|
||||||
|
portable/external/removable sd card on your device.
|
||||||
|
\nBootstrap binaries compiled for &TERMUX_APP_NAME; have hardcoded $PREFIX path and cannot be installed
|
||||||
|
under any path other than:\n%1$s.</string>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user