6.6.3 - Alpha - 打包单文件时自动读取并勾选已安装应用的声明权限 (issue #362)
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
* `تصليح` المشكلة التي كان فيها floaty.window/floaty.rawWindow لا يمكن تنفيذها في الخيوط الثانوية
|
||||
* `تصليح` المشكلة التي كان فيها floaty.getClip قد لا يسترجع محتوى الحافظة بشكل صحيح _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `تصليح` المشكلة التي كان فيها ناتج ui.inflate يفتقد إلى طرق البروتوتايب مثل attr و on و click
|
||||
* `تصليح` مشكلة يتم فيها ربط سياق النطاق بشكل غير صحيح عند استخدام صياغة XML لاستخدام تعبير JavaScript كقيمة لخاصية _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `تصليح` المشكلة التي كانت فيها استثناءات بعض الطرق لا يتم التقاطها بواسطة كتلة try..catch _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `تصليح` المشكلة التي كان فيها توليد الكود في صفحة تحليل التخطيطات قد يؤدي إلى تعطل التطبيق _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `تصليح` المشكلة التي كان فيها التطبيقات المعبأة لا يمكنها استخدام وحدة shizuku بشكل صحيح _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `Fix` Issue where floaty.window/floaty.rawWindow could not be executed on background threads
|
||||
* `Fix` Issue where floaty.getClip might not correctly retrieve clipboard content _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `Fix` Issue where ui.inflate returned values were missing prototype methods such as attr/on/click
|
||||
* `Fix` Issue where incorrect scope context binding when using XML syntax to use a JavaScript expression as an attribute value _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `Fix` Issue where exceptions in some method calls could not be caught by try..catch blocks _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `Fix` Issue where generating code on the layout analysis page could cause the app to crash _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `Fix` Issue where packaged applications could not properly use the shizuku module _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `Corrección` Problema en el que floaty.window / floaty.rawWindow no puede ejecutarse en subprocesos
|
||||
* `Corrección` Problema en el que floaty.getClip puede no obtener correctamente el contenido del portapapeles _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `Corrección` Problema en el que el retorno de ui.inflate pierde métodos de prototipo como attr, on y click
|
||||
* `Corrección` Problema en el que se produce un enlace incorrecto del contexto de ámbito al utilizar la sintaxis XML para usar una expresión JavaScript como valor de atributo _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `Corrección` Problema en el que algunas llamadas a métodos, al producir excepciones, no son capturadas por bloques try..catch _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `Corrección` Problema en el que la generación de código en la página de análisis de layouts puede provocar que la aplicación se bloquee _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `Corrección` Problema en el que las aplicaciones empaquetadas no pueden utilizar correctamente el módulo shizuku _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `Correction` Problème où floaty.window/floaty.rawWindow ne peut pas être exécuté dans un thread secondaire
|
||||
* `Correction` Problème où floaty.getClip risque de ne pas récupérer correctement le contenu du presse-papiers _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `Correction` Problème où ui.inflate renvoie un résultat auquel il manque les méthodes de prototype telles que attr, on et click
|
||||
* `Correction` Problème où le contexte de portée n'est pas correctement lié lors de l'utilisation de la syntaxe XML pour utiliser une expression JavaScript comme valeur d'attribut _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `Correction` Problème où certaines exceptions générées lors de l'appel de méthodes ne sont pas capturées par un bloc try..catch _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `Correction` Problème où la génération de code dans la page d'analyse de la mise en page peut provoquer un crash de l'application _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `Correction` Problème où les applications packagées ne peuvent pas utiliser correctement le module shizuku _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `修正` floaty.window / floaty.rawWindow がサブスレッドで実行できない問題を修正
|
||||
* `修正` floaty.getClip がクリップボードの内容を正しく取得できない場合がある問題を修正 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `修正` ui.inflate の返り値から attr, on, click などのプロトタイプメソッドが欠落する問題を修正
|
||||
* `修正` XML 構文を用いて JavaScript の式を属性値として使用する際, スコープのコンテキストが不正にバインドされる問題 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `修正` 一部メソッドで発生する例外が try..catch によって捕捉されない問題を修正 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `修正` レイアウト解析ページでコード生成時にアプリがクラッシュする可能性がある問題を修正 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `修正` パッケージ化されたアプリが shizuku モジュールを正しく利用できない問題を修正 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `수정` floaty.window / floaty.rawWindow 가 서브 스레드에서 실행되지 않는 문제를 수정
|
||||
* `수정` floaty.getClip 이 클립보드 내용을 올바르게 가져오지 못하는 문제를 수정 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `수정` ui.inflate 의 반환 값에서 attr, on, click 등의 프로토타입 메서드가 누락되는 문제를 수정
|
||||
* `수정` XML 구문을 사용하여 JavaScript 표현식을 속성 값으로 사용할 때, 스코프 컨텍스트가 올바르게 바인딩되지 않는 문제 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `수정` 일부 메서드 호출 시 발생하는 예외가 try..catch 로 처리되지 않는 문제를 수정 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `수정` 레이아웃 분석 페이지에서 코드 생성 중 앱이 종료되는 문제를 수정 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `수정` 패키지화된 앱에서 shizuku 모듈을 제대로 사용할 수 없는 문제를 수정 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `Исправление` Проблема, при которой floaty.window/floaty.rawWindow не могут выполняться в дополнительных потоках
|
||||
* `Исправление` Проблема, при которой floaty.getClip может неправильно получать содержимое буфера обмена _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `Исправление` Проблема, при которой результат ui.inflate лишён методов прототипа, таких как attr, on и click
|
||||
* `Исправление` Проблема, при которой некорректно связывается контекст области видимости при использовании XML-синтаксиса для задания выражения JavaScript в качестве значения атрибута _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `Исправление` Проблема, при которой исключения некоторых методов не перехватываются блоком try..catch _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `Исправление` Проблема, при которой генерация кода на странице анализа макета может приводить к сбою приложения _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `Исправление` Проблема, при которой упакованные приложения не могут корректно использовать модуль shizuku _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -6,9 +6,13 @@
|
||||
|
||||
# v6.6.3
|
||||
|
||||
###### 2025/04/16
|
||||
###### 2025/04/18
|
||||
|
||||
* `修复` 主页文档标签显示在线文档时部分内容被系统导航栏遮挡的问题
|
||||
* `修复` 部分设备代码编辑器空行显示方框字符的问题
|
||||
* `修复` console.setContentTextColor 方法导致日志字体颜色丢失默认值的问题 _[`issue #346`](http://issues.autojs6.com/346)_
|
||||
* `优化` 打包单文件时自动读取并勾选已安装应用的声明权限 _[`issue #362`](http://issues.autojs6.com/362)_
|
||||
* `依赖` 升级 Gradle 版本 8.14-rc-1 -> 8.14-rc-2
|
||||
|
||||
# v6.6.2
|
||||
|
||||
@@ -30,6 +34,7 @@
|
||||
* `修复` floaty.window/floaty.rawWindow 无法在子线程执行的问题
|
||||
* `修复` floaty.getClip 可能无法正常获取剪切板内容的问题 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `修复` ui.inflate 返回值丢失 attr/on/click 等原型方法的问题
|
||||
* `修复` 使用 XML 语法将 JavaScript 表达式作为属性值时, 其作用域上下文绑定错误的问题 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `修复` 部分方法调用出现异常时无法被 try..catch 块捕获的问题 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `修复` 布局分析页面生成代码时可能导致应用崩溃的问题 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `修复` 打包应用无法正常使用 shizuku 模块的问题 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `修復` floaty.window/floaty.rawWindow 無法在子線程執行的問題
|
||||
* `修復` floaty.getClip 可能無法正常獲取剪切板內容的問題 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `修復` ui.inflate 返回值丟失 attr/on/click 等原型方法的問題
|
||||
* `修復` 使用 XML 語法將 JavaScript 表達式作為屬性值時, 其作用域上下文綁定錯誤的問題 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `修復` 部分方法調用出現異常時無法被 try..catch 塊捕獲的問題 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `修復` 佈局分析頁面生成代碼時可能導致應用崩潰的問題 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `修復` 打包應用無法正常使用 shizuku 模塊的問題 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
* `修復` floaty.window/floaty.rawWindow 無法在子執行緒執行的問題
|
||||
* `修復` floaty.getClip 可能無法正常獲取剪下板內容的問題 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `修復` ui.inflate 返回值丟失 attr/on/click 等原型方法的問題
|
||||
* `修復` 使用 XML 語法將 JavaScript 表示式作為屬性值時, 其作用域上下文繫結錯誤的問題 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `修復` 部分方法調用出現異常時無法被 try..catch 塊捕獲的問題 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `修復` 佈局分析頁面生成程式碼時可能導致應用崩潰的問題 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `修復` 打包應用無法正常使用 shizuku 模組的問題 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -6,9 +6,13 @@
|
||||
|
||||
# v6.6.3
|
||||
|
||||
###### 2025/04/16
|
||||
###### 2025/04/18
|
||||
|
||||
* `修复` 主页文档标签显示在线文档时部分内容被系统导航栏遮挡的问题
|
||||
* `修复` 部分设备代码编辑器空行显示方框字符的问题
|
||||
* `修复` console.setContentTextColor 方法导致日志字体颜色丢失默认值的问题 _[`issue #346`](http://issues.autojs6.com/346)_
|
||||
* `优化` 打包单文件时自动读取并勾选已安装应用的声明权限 _[`issue #362`](http://issues.autojs6.com/362)_
|
||||
* `依赖` 升级 Gradle 版本 8.14-rc-1 -> 8.14-rc-2
|
||||
|
||||
# v6.6.2
|
||||
|
||||
@@ -30,6 +34,7 @@
|
||||
* `修复` floaty.window/floaty.rawWindow 无法在子线程执行的问题
|
||||
* `修复` floaty.getClip 可能无法正常获取剪切板内容的问题 _[`issue #341`](http://issues.autojs6.com/341)_
|
||||
* `修复` ui.inflate 返回值丢失 attr/on/click 等原型方法的问题
|
||||
* `修复` 使用 XML 语法将 JavaScript 表达式作为属性值时, 其作用域上下文绑定错误的问题 _[`issue #319`](http://issues.autojs6.com/319)_
|
||||
* `修复` 部分方法调用出现异常时无法被 try..catch 块捕获的问题 _[`issue #345`](http://issues.autojs6.com/345)_
|
||||
* `修复` 布局分析页面生成代码时可能导致应用崩溃的问题 _[`issue #288`](http://issues.autojs6.com/288)_
|
||||
* `修复` 打包应用无法正常使用 shizuku 模块的问题 _[`issue #227`](http://issues.autojs6.com/227)_ _[`issue #231`](http://issues.autojs6.com/231)_ _[`issue #284`](http://issues.autojs6.com/284)_ _[`issue #287`](http://issues.autojs6.com/287)_ _[`issue #304`](http://issues.autojs6.com/304)_
|
||||
|
||||
@@ -18,10 +18,13 @@ object MaterialDialogExtensions {
|
||||
}
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun MaterialDialog.makeTextCopyable(textViewGetter: (dialog: MaterialDialog) -> TextView?) {
|
||||
makeTextCopyable(textViewGetter(this))
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@JvmOverloads
|
||||
fun MaterialDialog.makeTextCopyable(textView: TextView?, textValue: String? = textView?.text?.toString()) {
|
||||
if (textValue != null) {
|
||||
val context = this.context
|
||||
|
||||
@@ -750,7 +750,7 @@ class UI(private val scriptRuntime: ScriptRuntime) : AugmentableProxy(scriptRunt
|
||||
* ```
|
||||
*
|
||||
* @param expression The JavaScript expression to evaluate as a string. (zh-CN: 用于执行的表达式.)
|
||||
* @param ctx The context (scriptable scope) in which the expression should be evaluated. (zh-CN: 提供给参数 expression 的作用于上下文.)
|
||||
* @param ctx The context (scriptable scope) in which the expression should be evaluated. (zh-CN: 提供给参数 expression 的作用域上下文.)
|
||||
* @return The result of evaluating the expression. (zh-CN: 参数 expression 执行结果.)
|
||||
*/
|
||||
private fun evalInContext(expression: String, ctx: Scriptable): Any? {
|
||||
|
||||
@@ -4,6 +4,7 @@ import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.Window;
|
||||
import com.afollestad.materialdialogs.MaterialDialog;
|
||||
import org.autojs.autojs.extension.MaterialDialogExtensions;
|
||||
import org.autojs.autojs.ui.BaseActivity;
|
||||
import org.autojs.autojs6.R;
|
||||
|
||||
@@ -34,7 +35,7 @@ public class ErrorDialogActivity extends BaseActivity {
|
||||
}
|
||||
|
||||
// Show dialog
|
||||
new MaterialDialog.Builder(this)
|
||||
var materialDialog = new MaterialDialog.Builder(this)
|
||||
.title(title)
|
||||
.content(message)
|
||||
.positiveText(positiveButtonText)
|
||||
@@ -44,6 +45,8 @@ public class ErrorDialogActivity extends BaseActivity {
|
||||
.onPositive((dialog, which) -> finish())
|
||||
.dismissListener(dialog -> finish())
|
||||
.show();
|
||||
|
||||
MaterialDialogExtensions.makeTextCopyable(materialDialog, materialDialog.getContentView());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -3,6 +3,7 @@ package org.autojs.autojs.ui.project;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.os.Bundle;
|
||||
import android.text.Editable;
|
||||
@@ -26,6 +27,8 @@ import androidx.lifecycle.ViewModelProvider;
|
||||
import com.afollestad.materialdialogs.MaterialDialog;
|
||||
import com.google.android.flexbox.FlexboxLayout;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.jaredrummler.apkparser.ApkParser;
|
||||
import com.jaredrummler.apkparser.model.ApkMeta;
|
||||
import io.reactivex.Observable;
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.schedulers.Schedulers;
|
||||
@@ -35,12 +38,12 @@ import org.autojs.autojs.core.pref.Language;
|
||||
import org.autojs.autojs.model.explorer.Explorers;
|
||||
import org.autojs.autojs.model.script.ScriptFile;
|
||||
import org.autojs.autojs.project.ProjectConfig;
|
||||
import org.autojs.autojs.runtime.ScriptRuntime;
|
||||
import org.autojs.autojs.runtime.api.AppUtils;
|
||||
import org.autojs.autojs.runtime.api.AppUtils.Companion.SimpleVersionInfo;
|
||||
import org.autojs.autojs.runtime.api.augment.pinyin.Pinyin;
|
||||
import org.autojs.autojs.ui.BaseActivity;
|
||||
import org.autojs.autojs.ui.common.NotAskAgainDialog;
|
||||
import org.autojs.autojs.ui.error.ErrorDialogActivity;
|
||||
import org.autojs.autojs.ui.filechooser.FileChooserDialogBuilder;
|
||||
import org.autojs.autojs.ui.keystore.ManageKeyStoreActivity;
|
||||
import org.autojs.autojs.ui.main.scripts.ApkInfoDialogManager;
|
||||
@@ -595,6 +598,8 @@ public class BuildActivity extends BaseActivity implements ApkBuilder.ProgressCa
|
||||
mIsDefaultIcon = false;
|
||||
}
|
||||
mIconView.setVisibility(View.VISIBLE);
|
||||
|
||||
updatePermissionsCheckboxes(packageName);
|
||||
}, throwable -> {
|
||||
mPackageNameView.setText(getString(R.string.format_default_package_name, file.getSimplifiedName().toLowerCase(Language.getPrefLanguage().getLocale())));
|
||||
mVersionNameView.setText(R.string.default_build_apk_version_name);
|
||||
@@ -608,6 +613,46 @@ public class BuildActivity extends BaseActivity implements ApkBuilder.ProgressCa
|
||||
setSource(file);
|
||||
}
|
||||
|
||||
private void updatePermissionsCheckboxes(String packageName) {
|
||||
ApkParser parser;
|
||||
try {
|
||||
parser = ApkParser.create(getPackageManager(), packageName);
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
return;
|
||||
}
|
||||
|
||||
try {
|
||||
ApkMeta meta = parser.getApkMeta();
|
||||
if (meta == null || meta.usesPermissions == null) {
|
||||
return;
|
||||
}
|
||||
var initialPermissions = meta.usesPermissions;
|
||||
IntStream.range(0, mFlexboxPermissionsView.getChildCount())
|
||||
.mapToObj(i -> mFlexboxPermissionsView.getChildAt(i))
|
||||
.forEach(child -> {
|
||||
CharSequence viewCharSequence = child instanceof RoundCheckboxWithText
|
||||
? ((RoundCheckboxWithText) child).getText()
|
||||
: child instanceof CheckBox ? ((CheckBox) child).getText() : null;
|
||||
if (viewCharSequence == null) {
|
||||
return;
|
||||
}
|
||||
String viewText = viewCharSequence.toString().split("\n")[0].trim();
|
||||
if (!initialPermissions.contains(viewText)) {
|
||||
return;
|
||||
}
|
||||
if (child instanceof RoundCheckboxWithText) {
|
||||
((RoundCheckboxWithText) child).setChecked(true);
|
||||
} else {
|
||||
((CheckBox) child).setChecked(true);
|
||||
}
|
||||
});
|
||||
} catch (Exception ignored) {
|
||||
/* Ignored. */
|
||||
} finally {
|
||||
parser.close();
|
||||
}
|
||||
}
|
||||
|
||||
private static String generatePackageNameSuffix(ScriptFile file) {
|
||||
String name = file.getSimplifiedName();
|
||||
if (name.matches(".*[\\u4e00-\\u9fff].*")) {
|
||||
@@ -871,7 +916,7 @@ public class BuildActivity extends BaseActivity implements ApkBuilder.ProgressCa
|
||||
|
||||
@NotNull
|
||||
private ArrayList<String> collectCheckedItems(FlexboxLayout flexboxLayout) {
|
||||
ArrayList<String> libs = new ArrayList<>();
|
||||
ArrayList<String> result = new ArrayList<>();
|
||||
|
||||
for (int i = 0; i < flexboxLayout.getChildCount(); i += 1) {
|
||||
View child = flexboxLayout.getChildAt(i);
|
||||
@@ -879,19 +924,19 @@ public class BuildActivity extends BaseActivity implements ApkBuilder.ProgressCa
|
||||
if (((RoundCheckboxWithText) child).isChecked()) {
|
||||
CharSequence charSequence = ((RoundCheckboxWithText) child).getText();
|
||||
if (charSequence != null) {
|
||||
libs.add(charSequence.toString());
|
||||
result.add(charSequence.toString());
|
||||
}
|
||||
}
|
||||
} else if (child instanceof CheckBox) {
|
||||
if (((CheckBox) child).isChecked()) {
|
||||
CharSequence charSequence = ((CheckBox) child).getText();
|
||||
if (charSequence != null) {
|
||||
libs.add(charSequence.toString().split("\n")[0]);
|
||||
result.add(charSequence.toString().split("\n")[0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return libs;
|
||||
return result;
|
||||
}
|
||||
|
||||
private ApkBuilder callApkBuilder(File buildPath, File outApk, ProjectConfig projectConfig) throws Exception {
|
||||
@@ -918,9 +963,7 @@ public class BuildActivity extends BaseActivity implements ApkBuilder.ProgressCa
|
||||
mProgressDialog.dismiss();
|
||||
mProgressDialog = null;
|
||||
}
|
||||
String message = getString(R.string.text_failed_to_build) + "\n" + error.getMessage();
|
||||
ViewUtils.showToast(this, message, true);
|
||||
ScriptRuntime.popException(message);
|
||||
ErrorDialogActivity.showErrorDialog(this, R.string.text_failed_to_build, error.getMessage());
|
||||
Log.e(LOG_TAG, "Failed to build", error);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user