UEngine运行器1.8.1
This commit is contained in:
parent
531690fa4a
commit
05eefcfe9b
6
Makefile
6
Makefile
|
@ -19,6 +19,8 @@ build:
|
|||
cp -rv uengine-app-setting.py new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
cp -rv uengine-app-install new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
cp -rv uengine_logo.svg new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
cp -rv defult.svg new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
|
||||
cp -rv runner.svg new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
cp -rv root-uengine.sh new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
cp -rv menu.svg new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/
|
||||
|
@ -32,10 +34,10 @@ build:
|
|||
dpkg -b new-deb-build com.gitee.uengine.runner.spark.deb
|
||||
|
||||
install:
|
||||
make build
|
||||
make build
|
||||
echo "Install..."
|
||||
sudo apt update
|
||||
sudo dpkg -i com.gitee.uengine.runner.spark.deb
|
||||
sudo dpkg -i com.gitee.uengine.runner.spark.deb ; true
|
||||
sudo apt install -f
|
||||
|
||||
depend:
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
#!/bin/bash
|
||||
/usr/bin/uengine launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
|
Binary file not shown.
|
@ -28,6 +28,7 @@
|
|||
"※2、修复 APK 路径带空格无法正常安装的问题",
|
||||
"3、修复打包器打包的 APK 带下划线“_”无法正常打包的问题",
|
||||
"4、修复打包器下方命令返回过多空白行的问题",
|
||||
"5、修复程序生成的默认图标任然是旧版图标的问题",
|
||||
"",
|
||||
"<b>V1.8.0:</b>",
|
||||
"※1、程序界面大部分由 Tkinter 转 PyQt5",
|
||||
|
@ -184,7 +185,7 @@
|
|||
"11、deepin 终端",
|
||||
"……"
|
||||
],
|
||||
"Time": "2022年08月01日",
|
||||
"Time": "2022年08月29日",
|
||||
"Contribute": [
|
||||
"<b>感谢以下用户提供的问题、建议、图标、代码等,如果有遗漏,请及时与开发者联系添加,以及如果侵犯到您的合法权益,也及时与开发者联系:</p>",
|
||||
"<hr>",
|
||||
|
@ -202,6 +203,7 @@
|
|||
"感谢 通天灵宝(https://bbs.deepin.org/user/137230)、wuhaiou123(https://bbs.chinauos.com/zh/user/309117) 反馈的 图标生成错误导致无法生成 .desktop 文件的问题",
|
||||
"感谢 潜伏(https://bbs.chinauos.com/zh/user/303339) 反馈的右键支持安装/卸载的建议",
|
||||
"感谢 z***g@gmx.de(https://bbs.chinauos.com/zh/user/312017) 反馈的 UEngine 更新后 uengine-launch.sh 的社区版检测问题",
|
||||
"参考 忘记、过去(https://bbs.deepin.org/user/154730) 的帖子《如何更优雅地使用 pkexec》(https://bbs.deepin.org/post/202966)"
|
||||
"参考 忘记、过去(https://bbs.deepin.org/user/154730) 的帖子《如何更优雅地使用 pkexec》(https://bbs.deepin.org/post/202966)",
|
||||
"感谢 U+解答组们 反馈的 1.8.0 带路径无法正常安装 APK 的问题"
|
||||
]
|
||||
}
|
|
@ -491,11 +491,11 @@ def SaveApkIcon(apkFilePath, iconSavePath)->"保存 apk 文件的图标":
|
|||
saveIconFile.write(iconData)
|
||||
return
|
||||
print("None Icon! Show defult icon")
|
||||
shutil.copy(programPath + "/defult.png", iconSavePath)
|
||||
shutil.copy(programPath + "/defult.svg", iconSavePath)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
print("Error, show defult icon")
|
||||
shutil.copy(programPath + "/defult.png", iconSavePath)
|
||||
shutil.copy(programPath + "/defult.svg", iconSavePath)
|
||||
|
||||
def saveicon():
|
||||
global temppath
|
||||
|
@ -1078,7 +1078,7 @@ class UpdateWindow():
|
|||
cancel = QtWidgets.QPushButton("取消")
|
||||
cancel.clicked.connect(UpdateWindow.update.close)
|
||||
try:
|
||||
UpdateWindow.data = json.loads(requests.get("http://120.25.153.144/uengine-runner/update.json").text)
|
||||
UpdateWindow.data = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/update.json").text)
|
||||
versionLabel = QtWidgets.QLabel(f"当前版本:{version}\n最新版本:{UpdateWindow.data['Version']}\n更新内容:")
|
||||
if UpdateWindow.data["Version"] == version:
|
||||
updateText.setText("此为最新版本,无需更新")
|
||||
|
@ -1217,7 +1217,7 @@ class ApkInformation():
|
|||
if choose == None or choose == 7:
|
||||
return
|
||||
try:
|
||||
QtWidgets.QMessageBox.critical(widget, "提示", requests.post("http://120.25.153.144/uengine-runner/app/check/add.php", {"Package": GetApkPackageName(path), "Type": choose}).text)
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post("https://304626p927.goho.co/uengine-runner/app/check/add.php", {"Package": GetApkPackageName(path), "Type": choose}).text)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
QtWidgets.QMessageBox.critical(widget, "错误", langFile[lang]["Main"]["MainWindow"]["Error"]["ConnectServerStarError"])
|
||||
|
@ -1229,7 +1229,7 @@ class ApkInformation():
|
|||
QtWidgets.QMessageBox.critical(widget, "错误", langFile[lang]["Main"]["MainWindow"]["Error"]["ApkFileError"])
|
||||
return
|
||||
try:
|
||||
data = json.loads(requests.get("http://120.25.153.144/uengine-runner/app/check/" + package +"/data.json").text)
|
||||
data = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/app/check/" + package +"/data.json").text)
|
||||
print(data)
|
||||
except:
|
||||
QtWidgets.QMessageBox.information(widget, "提示", "此程序暂时没有评分,欢迎您贡献第一个评分!")
|
||||
|
@ -1569,7 +1569,7 @@ findApkNameHistory = list(json.loads(readtxt(get_home() + "/.config/uengine-runn
|
|||
findApkActivityHistory = list(json.loads(readtxt(get_home() + "/.config/uengine-runner/FindApkActivityHistory.json")).values())
|
||||
|
||||
try:
|
||||
threading.Thread(target=requests.get, args=[parse.unquote(base64.b64decode("aHR0cDovLzEyMC4yNS4xNTMuMTQ0L3VlbmdpbmUtcnVubmVyL29wZW4vSW5zdGFsbC5waHA=").decode("utf-8")) + "?Version=" + version]).start()
|
||||
threading.Thread(target=requests.get, args=[parse.unquote(base64.b64decode("aHR0cHM6Ly8zMDQ2MjZwOTI3LmdvaG8uY28vdWVuZ2luZS1ydW5uZXIvb3Blbi9JbnN0YWxsLnBocA==").decode("utf-8")) + "?Version=" + version]).start()
|
||||
except:
|
||||
pass
|
||||
# add sub window
|
||||
|
@ -1577,10 +1577,10 @@ except:
|
|||
windowflag = "close"
|
||||
def Egg():
|
||||
try:
|
||||
lists = json.loads(requests.get("http://120.25.153.144/uengine-runner/VersionList.json").text)
|
||||
lists = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/VersionList.json").text)
|
||||
data = []
|
||||
for i in lists:
|
||||
data.append(int(requests.get("http://120.25.153.144/uengine-runner/{}/data.txt".format(i)).text))
|
||||
data.append(int(requests.get("https://304626p927.goho.co/uengine-runner/{}/data.txt".format(i)).text))
|
||||
except:
|
||||
QtWidgets.QMessageBox.critical(widget, "错误", "服务器出错!数据获取失败!")
|
||||
return
|
||||
|
|
|
@ -1,22 +1,19 @@
|
|||
Package: com.gitee.uengine.runner.spark
|
||||
Source: com.gitee.uengine.runner.spark
|
||||
Replaces: spark-uengine-runner, com.gitee.uengine.runner.spark.ubuntu
|
||||
Version: 1.8.0
|
||||
Version: 1.8.1
|
||||
Architecture: all
|
||||
Section: utils
|
||||
Installed-Size: 1600
|
||||
Maintainer: gfdgd xi <3025613752@qq.com>, actionchen<917981399@qq.com>, 柚子<https://gitee.com/Limexb>, 为什么您不喜欢熊出没和阿布呢<https://weibo.com/u/7755040136>, 星空露光<https://gitee.com/Cynorkyle>, shenmo<jifengshenmo@outlook.com>
|
||||
Depends: python3, python3-tk, python3-pip, aapt, python3-setuptools, deepin-terminal, curl, python3-pil, python3-requests, adb, fonts-noto-cjk, python3-numpy, wget, inotify-tools, aria2, python3-pyqt5
|
||||
Recommends: python3-matplotlib, uengine, deepin-elf-verify (>= 0.0.16.7-1)
|
||||
Priority: optional
|
||||
Conflicts: spark-uengine-apk-builder, com.gitee.uengine.runner.spark.ubuntu
|
||||
Homepage: [https://gitee.com/gfdgd-xi/uengine-runner, https://github.com/gfdgd-xi/uengine-runner, https://www.gitlink.org.cn/gfdgd_xi/uengine-runner]
|
||||
Description: UEngine 运行器,1.8.0 更新内容:
|
||||
※1、程序界面大部分由 Tkinter 转 PyQt5
|
||||
※2、添加了自动/手动配置 UEngine 窗口大小文件(自动需要在设置里手动开启,配置窗口的配置文件需要 Root)
|
||||
※3、增加了安装/卸载失败后的提示
|
||||
※4、补回谢明名单
|
||||
※5、支持免密安装/卸载 APK
|
||||
6、pip 更换华为源,提升下载速度
|
||||
7、新增主题功能
|
||||
8、支持在安装 APK 后手动指定分类(手动指定需要在设置里手动开启)
|
||||
Description: UEngine 运行器,1.8.1 更新内容:
|
||||
※1、修复在 APK 详细信息中图标可能过大导致无法正常使用的问题
|
||||
※2、修复 APK 路径带空格无法正常安装的问题
|
||||
3、修复打包器打包的 APK 带下划线“_”无法正常打包的问题
|
||||
4、修复打包器下方命令返回过多空白行的问题
|
||||
开发/参与者:gfdgd xi <3025613752@qq.com>, actionchen<917981399@qq.com>, 柚子<https://gitee.com/Limexb>, 为什么您不喜欢熊出没和阿布呢<https://weibo.com/u/7755040136>, 星空露光<https://gitee.com/Cynorkyle>, shenmo<jifengshenmo@outlook.com>
|
||||
|
|
|
@ -21,4 +21,4 @@ ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-applist-laun
|
|||
# 因为 Ubuntu 的问题,省略
|
||||
gtk-update-icon-cache /usr/share/icons/bloom > /dev/null | true
|
||||
# 向服务器返回安装数加1(不显示内容且忽略错误)
|
||||
curl http://120.25.153.144/uengine-runner/Install.php?Version=1.8.0 -s > /dev/null | true
|
||||
curl https://304626p927.goho.co/uengine-runner/Install.php?Version=1.8.1 -s > /dev/null | true
|
|
@ -1,19 +1,19 @@
|
|||
#!/bin/sh
|
||||
# 删除软链接
|
||||
rm -fv /usr/bin/uengine-runner
|
||||
rm -fv /usr/bin/uengine-apk-builder
|
||||
rm -fv /usr/bin/uengine-app-uninstall
|
||||
rm -fv /usr/bin/uengine-app-install
|
||||
rm -fv /usr/bin/uengine-clean
|
||||
rm -fv /usr/bin/uengine-runner-about
|
||||
rm -fv /usr/bin/uengine-keyboard
|
||||
rm -fv /usr/bin/uengine-useadb
|
||||
rm -fv /usr/bin/uengine-runner-launch.sh
|
||||
rm -fv /usr/bin/uengine-runner-update-bug
|
||||
rm -fv /usr/bin/uengine-root
|
||||
rm -frv /opt/apps/com.gitee.uengine.runner.spark/files/api/__pycache__
|
||||
rm -frv /opt/apps/com.gitee.uengine.runner.spark/files/__pycache__
|
||||
rm -fv /usr/bin/uengine-runner-applist-launch.sh
|
||||
rm -f /usr/bin/uengine-runner
|
||||
rm -f /usr/bin/uengine-apk-builder
|
||||
rm -f /usr/bin/uengine-app-uninstall
|
||||
rm -f /usr/bin/uengine-app-install
|
||||
rm -f /usr/bin/uengine-clean
|
||||
rm -f /usr/bin/uengine-runner-about
|
||||
rm -f /usr/bin/uengine-keyboard
|
||||
rm -f /usr/bin/uengine-useadb
|
||||
rm -f /usr/bin/uengine-runner-launch.sh
|
||||
rm -f /usr/bin/uengine-runner-update-bug
|
||||
rm -f /usr/bin/uengine-root
|
||||
rm -fr /opt/apps/com.gitee.uengine.runner.spark/files/api/__pycache__
|
||||
rm -fr /opt/apps/com.gitee.uengine.runner.spark/files/__pycache__
|
||||
rm -f /usr/bin/uengine-runner-applist-launch.sh
|
||||
# 刷新图标缓存
|
||||
# 因为 Ubuntu 的问题,省略
|
||||
gtk-update-icon-cache /usr/share/icons/bloom > /dev/null | true
|
|
@ -7,6 +7,6 @@ Icon=/opt/apps/com.gitee.uengine.runner.spark/files/menu.svg
|
|||
MimeType=
|
||||
Name=UEngine App List
|
||||
Name[zh]=UEngine 程序菜单
|
||||
StartupWMClass=UEngine 程序菜单
|
||||
StartupWMClass=uengine-runner-applist-launch.sh
|
||||
Terminal=false
|
||||
Type=Application
|
||||
|
|
|
@ -1,165 +1,190 @@
|
|||
<!doctype html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset='UTF-8'><meta name='viewport' content='width=device-width initial-scale=1'>
|
||||
<title>index</title>
|
||||
<meta charset='UTF-8'>
|
||||
<meta name='viewport' content='width=device-width initial-scale=1'>
|
||||
<link rel="shortcut icon" href="../runner.svg">
|
||||
<title>UEngine 程序帮助</title>
|
||||
</head>
|
||||
<body><h1 id='uengine-运行器帮助'>UEngine 运行器帮助</h1>
|
||||
<hr />
|
||||
<h2 id='帮助简述'>帮助简述</h2>
|
||||
<blockquote><p>安装APK:点浏览按钮,选中需要安装的APK,然后点安装按钮<br/>卸载APK:在卸载APK下面的输入框内输入需要卸载的APK包名,点卸载按钮,如果无法获取包名,可以通过浏览APK文件程序自动获取包名进行卸载。<br/>保存APK图标:在安装APK下面的输入框浏览或输入APK的路径,然后点击“保存图标”按钮,选择保存位置即可<br/>重置(删除)UEngine数据:点击菜单栏的“UEngine”的“清空UEngine数据”,输入密码重启即可<br/>注意:如果任何安卓一遍打不开,多打开几遍应该就可以重新加载UEngine配置了<br/>打开UEngine应用列表:打开系统已安装的应用列表(安卓界面)<br/><strong>提示:</strong> <br/><strong>※1、近期升级的 UEngine 安装时会自动把要安装的 apk 删除,如果这个 apk 文件非常重要请拷贝一个备份版并安装这个备份版</strong> <br/><strong>2、需要你有使用 root 权限的能力;</strong><br/><strong>3、需要安装 UEngine 才能使用;</strong><br/><strong>4、提取 apk 图标的 apk 路径以“安装 apk”那栏为准;</strong><br/><strong>5、如果想要使用adb连接UEngine或其他手机,请使用 1.2.0 以前的版本。(如需连接UEngine请安装adb补丁)</strong> </p>
|
||||
</blockquote>
|
||||
<hr />
|
||||
<h2 id='详细帮助'>详细帮助</h2>
|
||||
<h3 id='如何安装自己的-apk'>如何安装自己的 Apk</h3>
|
||||
<p><em>请保证您已经把要安装的Apk下载到电脑本地并保证Apk完整且有权限</em></p>
|
||||
<h4 id='方法一-1'>方法一</h4>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击浏览按钮,找到想要安装的Apk<br/><img src="1-1-2.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击安装按钮,输入密码
|
||||
<img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,在启动器找到新安装的图标启动即可<br/><img src="1-1-4.png" referrerpolicy="no-referrer"><br/><img src="1-1-5.png" referrerpolicy="no-referrer"> </li>
|
||||
|
||||
</ol>
|
||||
<h4 id='方法二-1'>方法二</h4>
|
||||
<ol start='' >
|
||||
<li>打开要安装的Apk所在目录,右击=>打开方式=>安装或卸载 APK(UEngine 运行器)<br/><img src="1-2-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击安装按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,在启动器找到新安装的图标启动即可<br/><img src="1-1-4.png" referrerpolicy="no-referrer"><br/><img src="1-2-2.png" referrerpolicy="no-referrer"> </li>
|
||||
<body onload="UpdateTime();">
|
||||
<h1 id='uengine-运行器帮助'>UEngine 运行器帮助</h1>
|
||||
<hr />
|
||||
<h2 id='帮助简述'>帮助简述</h2>
|
||||
<blockquote>
|
||||
<p>安装APK:点浏览按钮,选中需要安装的APK,然后点安装按钮<br/>卸载APK:在卸载APK下面的输入框内输入需要卸载的APK包名,点卸载按钮,如果无法获取包名,可以通过浏览APK文件程序自动获取包名进行卸载。<br/>保存APK图标:在安装APK下面的输入框浏览或输入APK的路径,然后点击“保存图标”按钮,选择保存位置即可<br/>重置(删除)UEngine数据:点击菜单栏的“UEngine”的“清空UEngine数据”,输入密码重启即可<br/>注意:如果任何安卓一遍打不开,多打开几遍应该就可以重新加载UEngine配置了<br/>打开UEngine应用列表:打开系统已安装的应用列表(安卓界面)<br/><strong>提示:</strong>
|
||||
<br/><strong>※1、近期升级的 UEngine 安装时会自动把要安装的 apk 删除,如果这个 apk 文件非常重要请拷贝一个备份版并安装这个备份版</strong>
|
||||
<br/><strong>2、需要你有使用 root 权限的能力;</strong><br/><strong>3、需要安装 UEngine 才能使用;</strong><br/><strong>4、提取 apk
|
||||
图标的 apk 路径以“安装 apk”那栏为准;</strong><br/><strong>5、如果想要使用adb连接UEngine或其他手机,请使用 1.2.0
|
||||
以前的版本。(如需连接UEngine请安装adb补丁)</strong> </p>
|
||||
</blockquote>
|
||||
<hr />
|
||||
<h2 id='详细帮助'>详细帮助</h2>
|
||||
<h3 id='如何安装自己的-apk'>如何安装自己的 Apk</h3>
|
||||
<p><em>请保证您已经把要安装的Apk下载到电脑本地并保证Apk完整且有权限</em></p>
|
||||
<h4 id='方法一-1'>方法一</h4>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击浏览按钮,找到想要安装的Apk<br/><img src="1-1-2.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击安装按钮,输入密码<br>
|
||||
<img src="1-1-3.png" referrerpolicy="no-referrer">
|
||||
</li>
|
||||
<li>提示“操作完成”,在启动器找到新安装的图标启动即可<br/><img src="1-1-4.png" referrerpolicy="no-referrer"><br/><img src="1-1-5.png"
|
||||
referrerpolicy="no-referrer"> </li>
|
||||
|
||||
</ol>
|
||||
<h3 id='卸载apk'>卸载Apk</h3>
|
||||
<h4 id='方法一-2'>方法一</h4>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击浏览按钮,找到想要卸载的Apk<br/><img src="1-1-2.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击卸载按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,卸载完成 <br/><img src="1-1-4.png" referrerpolicy="no-referrer"> </li>
|
||||
</ol>
|
||||
<h4 id='方法二-1'>方法二</h4>
|
||||
<ol start=''>
|
||||
<li>打开要安装的Apk所在目录,右击=>打开方式=>安装或卸载 APK(UEngine 运行器)<br/><img src="1-2-1.png" referrerpolicy="no-referrer">
|
||||
</li>
|
||||
<li>点击安装按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,在启动器找到新安装的图标启动即可<br/><img src="1-1-4.png" referrerpolicy="no-referrer"><br/><img src="1-2-2.png"
|
||||
referrerpolicy="no-referrer"> </li>
|
||||
|
||||
</ol>
|
||||
<h4 id='方法二-2'>方法二</h4>
|
||||
<ol start='' >
|
||||
<li>打开要安装的Apk所在目录,右击=>打开方式=>安装或卸载 APK(UEngine 运行器)<br/><img src="1-2-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击卸载按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,卸载完成<br/><img src="1-1-4.png" referrerpolicy="no-referrer"> </li>
|
||||
</ol>
|
||||
<h3 id='卸载apk'>卸载Apk</h3>
|
||||
<h4 id='方法一-2'>方法一</h4>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击浏览按钮,找到想要卸载的Apk<br/><img src="1-1-2.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击卸载按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,卸载完成 <br/><img src="1-1-4.png" referrerpolicy="no-referrer"> </li>
|
||||
|
||||
</ol>
|
||||
<h3 id='查询apk信息'>查询Apk信息</h3>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息</li>
|
||||
</ol>
|
||||
<h4 id='方法二-2'>方法二</h4>
|
||||
<ol start=''>
|
||||
<li>打开要安装的Apk所在目录,右击=>打开方式=>安装或卸载 APK(UEngine 运行器)<br/><img src="1-2-1.png" referrerpolicy="no-referrer">
|
||||
</li>
|
||||
<li>点击卸载按钮,输入密码<br/><img src="1-1-3.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>提示“操作完成”,卸载完成<br/><img src="1-1-4.png" referrerpolicy="no-referrer"> </li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-3-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='查看程序评分'>查看程序评分</h3>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息
|
||||
<img src="1-3-1.png" referrerpolicy="no-referrer"></li>
|
||||
<li>点击“查看程序评分情况”即可查看其他用户对程序的评分</li>
|
||||
</ol>
|
||||
<h3 id='查询apk信息'>查询Apk信息</h3>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-4-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='上传用户评分'>上传用户评分</h3>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
</ol>
|
||||
<p> <img src="1-3-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='查看程序评分'>查看程序评分</h3>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"> </li>
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息
|
||||
<br>
|
||||
<img src="1-3-1.png" referrerpolicy="no-referrer">
|
||||
</li>
|
||||
<li>点击“查看程序评分情况”即可查看其他用户对程序的评分</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"> </p>
|
||||
<ol start='2' >
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息</li>
|
||||
</ol>
|
||||
<p> <img src="1-4-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='上传用户评分'>上传用户评分</h3>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-3-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3' >
|
||||
<li>点击“上传程序评分情况”,按照要求进行评分</li>
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"> </p>
|
||||
<ol start='2'>
|
||||
<li>点击“Apk 信息” 按钮即可查询Apk信息</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-5-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='4' >
|
||||
<li>如果提示“提交成功!感谢您的提交”就代表评分成功</li>
|
||||
</ol>
|
||||
<p> <img src="1-3-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3'>
|
||||
<li>点击“上传程序评分情况”,按照要求进行评分</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-5-2.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='更新程序'>更新程序</h3>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
</ol>
|
||||
<p> <img src="1-5-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='4'>
|
||||
<li>如果提示“提交成功!感谢您的提交”就代表评分成功</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2' >
|
||||
<li>点击“关于”=>“检查更新”,打开更新窗口</li>
|
||||
</ol>
|
||||
<p> <img src="1-5-2.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='更新程序'>更新程序</h3>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-6-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3' >
|
||||
<li><strong>保证您的电脑没有运行其它Python应用以及本程序所有工作都已经完成</strong>,再点击“更新(更新过程中会关闭所有Python应用,包括这个应用)”,输入密码以进行更新</li>
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2'>
|
||||
<li>点击“关于”=>“检查更新”,打开更新窗口</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-6-2.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='4' >
|
||||
<li>提示“更新完毕!”后重新启动 UEngine 运行器就更新完毕了</li>
|
||||
</ol>
|
||||
<p> <img src="1-6-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3'>
|
||||
<li><strong>保证您的电脑没有运行其它Python应用以及本程序所有工作都已经完成</strong>,再点击“更新(更新过程中会关闭所有Python应用,包括这个应用)”,输入密码以进行更新</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-6-3.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='保存图标'>保存图标</h3>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
</ol>
|
||||
<p> <img src="1-6-2.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='4'>
|
||||
<li>提示“更新完毕!”后重新启动 UEngine 运行器就更新完毕了</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2' >
|
||||
<li>选择要保存图标的Apk,点击“保存图标”按钮,选择要保存的位置即可</li>
|
||||
</ol>
|
||||
<p> <img src="1-6-3.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='保存图标'>保存图标</h3>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 </li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-7-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='打开已安装的程序列表'>打开已安装的程序列表</h3>
|
||||
<h4 id='方法一-3'>方法一</h4>
|
||||
<p>打开启动器=>UEngine 程序菜单 即可</p>
|
||||
<h4 id='方法二-3'>方法二</h4>
|
||||
<ol start='' >
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"></li>
|
||||
<li>点击“打开 UEngine 应用列表”即可</li>
|
||||
</ol>
|
||||
<p> <img src="1-1-1.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2'>
|
||||
<li>选择要保存图标的Apk,点击“保存图标”按钮,选择要保存的位置即可</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-8-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='将-apk-打包成可以无需本应用即可安装的-deb-包'>将 Apk 打包成可以无需本应用即可安装的 deb 包</h3>
|
||||
<h4 id='打开-uengine-打包器的三种方法'>打开 UEngine 打包器的三种方法</h4>
|
||||
<h5 id='方法一-4'>方法一</h5>
|
||||
<p>启动器=>UEngine 应用打包器</p>
|
||||
<h5 id='方法二-4'>方法二</h5>
|
||||
<p>打开要打包的 Apk 所在目录,右击=>“打开方式”=>“打包 deb(UEngine 运行器)”(接下来可以略过步骤一)</p>
|
||||
<p><img src="1-9-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h5 id='方式三'>方式三</h5>
|
||||
<p>打开 UEngine 运行器,点击菜单栏的“UEngine”=>“UEngine 应用打包”</p>
|
||||
<p><img src="1-9-2.png" referrerpolicy="no-referrer"></p>
|
||||
<h4 id='打包-deb'>打包 deb</h4>
|
||||
<ol start='' >
|
||||
<li>打开“UEngine Apk 应用打包器”,点击“浏览按钮”选择apk</li>
|
||||
</ol>
|
||||
<p> <img src="1-7-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='打开已安装的程序列表'>打开已安装的程序列表</h3>
|
||||
<h4 id='方法一-3'>方法一</h4>
|
||||
<p>打开启动器=>UEngine 程序菜单 即可</p>
|
||||
<h4 id='方法二-3'>方法二</h4>
|
||||
<ol start=''>
|
||||
<li>打开 UEngine 运行器 <br/><img src="1-1-1.png" referrerpolicy="no-referrer"></li>
|
||||
<li>点击“打开 UEngine 应用列表”即可</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-9-3.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2' >
|
||||
<li>根据实际情况勾选选项,然后点击“打包”进行打包</li>
|
||||
</ol>
|
||||
<p> <img src="1-8-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h3 id='将-apk-打包成可以无需本应用即可安装的-deb-包'>将 Apk 打包成可以无需本应用即可安装的 deb 包</h3>
|
||||
<h4 id='打开-uengine-打包器的三种方法'>打开 UEngine 打包器的三种方法</h4>
|
||||
<h5 id='方法一-4'>方法一</h5>
|
||||
<p>启动器=>UEngine 应用打包器</p>
|
||||
<h5 id='方法二-4'>方法二</h5>
|
||||
<p>打开要打包的 Apk 所在目录,右击=>“打开方式”=>“打包 deb(UEngine 运行器)”(接下来可以略过步骤一)</p>
|
||||
<p><img src="1-9-1.png" referrerpolicy="no-referrer"></p>
|
||||
<h5 id='方式三'>方式三</h5>
|
||||
<p>打开 UEngine 运行器,点击菜单栏的“UEngine”=>“UEngine 应用打包”</p>
|
||||
<p><img src="1-9-2.png" referrerpolicy="no-referrer"></p>
|
||||
<h4 id='打包-deb'>打包 deb</h4>
|
||||
<ol start=''>
|
||||
<li>打开“UEngine Apk 应用打包器”,点击“浏览按钮”选择apk</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-9-4.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3' >
|
||||
<li>当提示“打包完成”时,打包完成,可以在桌面(一般是<code>/home/XXX/Desktop</code>)找到您打包的 deb 包,可以双击安装</li>
|
||||
</ol>
|
||||
<p> <img src="1-9-3.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='2'>
|
||||
<li>根据实际情况勾选选项,然后点击“打包”进行打包</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-9-5.png" referrerpolicy="no-referrer"></p>
|
||||
<p> <img src="1-9-6.png" referrerpolicy="no-referrer"></p>
|
||||
<p> <img src="1-9-7.png" referrerpolicy="no-referrer"></p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> ©2021-2022</p>
|
||||
</ol>
|
||||
<p> <img src="1-9-4.png" referrerpolicy="no-referrer"></p>
|
||||
<ol start='3'>
|
||||
<li>当提示“打包完成”时,打包完成,可以在桌面(一般是<code>/home/XXX/Desktop</code>)找到您打包的 deb 包,可以双击安装</li>
|
||||
|
||||
</ol>
|
||||
<p> <img src="1-9-5.png" referrerpolicy="no-referrer"></p>
|
||||
<p> <img src="1-9-6.png" referrerpolicy="no-referrer"></p>
|
||||
<p> <img src="1-9-7.png" referrerpolicy="no-referrer"></p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<p> </p>
|
||||
<script>
|
||||
function UpdateTime() {
|
||||
var d = new Date();
|
||||
document.getElementById("time").innerHTML = "©2021~" + d.getFullYear() + " gfdgd xi、为什么您不喜欢熊出没和阿布呢";
|
||||
}
|
||||
</script>
|
||||
<hr>
|
||||
<h1 id="time"> ©2021-2022</h1>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -160,6 +160,7 @@
|
|||
"button2": "浏览",
|
||||
"button3": " 打包",
|
||||
"check": "使用前缀“uengine-dc”",
|
||||
"size": "从 UEngine 导入程序大小设置(如果有设置)",
|
||||
"Menu": [
|
||||
{
|
||||
"Name": "程序",
|
||||
|
@ -330,6 +331,7 @@
|
|||
"button2": "Find",
|
||||
"button3": " Build",
|
||||
"check": "Use Prefix With \"uengine-dc\"",
|
||||
"size": "Add Android Program Size Setting From UEngine (If you're setting)",
|
||||
"Menu": [
|
||||
{
|
||||
"Name": "Program",
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 312 KiB |
Binary file not shown.
Before Width: | Height: | Size: 312 KiB |
|
@ -2,9 +2,10 @@
|
|||
"Package": "com.gitee.uengine.runner.spark",
|
||||
"Url": [
|
||||
"https://gitee.com/gfdgd-xi/uengine-runner",
|
||||
"https://github.com/gfdgd-xi/uengine-runner"
|
||||
"https://github.com/gfdgd-xi/uengine-runner",
|
||||
"https://gitlink.org.cn/gfdgd_xi/uengine-runner"
|
||||
],
|
||||
"Version": "1.8.0",
|
||||
"Version": "1.8.1",
|
||||
"System": "Linux(deepin/UOS)",
|
||||
"Tips": [
|
||||
"更多可见:https://gitee.com/gfdgd-xi/uengine-runner/wikis 或程序的更多帮助",
|
||||
|
@ -22,6 +23,13 @@
|
|||
"5、如果想要使用adb连接UEngine或其他手机,请使用 1.2.0 以前的版本。(如需连接UEngine请安装adb补丁)"
|
||||
],
|
||||
"Update": [
|
||||
"<b>V1.8.1:</b>",
|
||||
"※1、修复在 APK 详细信息中图标可能过大导致无法正常使用的问题",
|
||||
"※2、修复 APK 路径带空格无法正常安装的问题",
|
||||
"3、修复打包器打包的 APK 带下划线“_”无法正常打包的问题",
|
||||
"4、修复打包器下方命令返回过多空白行的问题",
|
||||
"5、修复程序生成的默认图标任然是旧版图标的问题",
|
||||
"",
|
||||
"<b>V1.8.0:</b>",
|
||||
"※1、程序界面大部分由 Tkinter 转 PyQt5",
|
||||
"※2、添加了自动/手动配置 UEngine 窗口大小文件(自动需要在设置里手动开启,配置窗口的配置文件需要 Root)",
|
||||
|
@ -166,7 +174,7 @@
|
|||
"Use": [
|
||||
"1、UEngine相关软件包(基于anbox开发)",
|
||||
"2、Python3",
|
||||
"3、tkinter(tkinter.tk、ttkthemes、tkinter.messagebox、tkinter.simpledialog、tkinter.filedialog 和 tkinter.ttk)",
|
||||
"3、PyQt5",
|
||||
"4、aapt",
|
||||
"5、dpkg",
|
||||
"6、tree",
|
||||
|
@ -177,7 +185,7 @@
|
|||
"11、deepin 终端",
|
||||
"……"
|
||||
],
|
||||
"Time": "2021年08月30日",
|
||||
"Time": "2022年08月29日",
|
||||
"Contribute": [
|
||||
"<b>感谢以下用户提供的问题、建议、图标、代码等,如果有遗漏,请及时与开发者联系添加,以及如果侵犯到您的合法权益,也及时与开发者联系:</p>",
|
||||
"<hr>",
|
||||
|
@ -195,6 +203,7 @@
|
|||
"感谢 通天灵宝(https://bbs.deepin.org/user/137230)、wuhaiou123(https://bbs.chinauos.com/zh/user/309117) 反馈的 图标生成错误导致无法生成 .desktop 文件的问题",
|
||||
"感谢 潜伏(https://bbs.chinauos.com/zh/user/303339) 反馈的右键支持安装/卸载的建议",
|
||||
"感谢 z***g@gmx.de(https://bbs.chinauos.com/zh/user/312017) 反馈的 UEngine 更新后 uengine-launch.sh 的社区版检测问题",
|
||||
"参考 忘记、过去(https://bbs.deepin.org/user/154730) 的帖子《如何更优雅地使用 pkexec》(https://bbs.deepin.org/post/202966)"
|
||||
"参考 忘记、过去(https://bbs.deepin.org/user/154730) 的帖子《如何更优雅地使用 pkexec》(https://bbs.deepin.org/post/202966)",
|
||||
"感谢 U+解答组们 反馈的 1.8.0 带路径无法正常安装 APK 的问题"
|
||||
]
|
||||
}
|
|
@ -2,10 +2,10 @@
|
|||
# 使用系统默认的 python3 运行
|
||||
###########################################################################################
|
||||
# 作者:gfdgd xi
|
||||
# 版本:1.7.0
|
||||
# 更新时间:2022年07月23日
|
||||
# 版本:1.8.1
|
||||
# 更新时间:2022年08月01日
|
||||
# 感谢:anbox、deepin 和 统信
|
||||
# 基于 Python3 的 tkinter 构建
|
||||
# 基于 Python3 的 PyQt5 构建
|
||||
###########################################################################################
|
||||
#################
|
||||
# 引入所需的库
|
||||
|
@ -17,7 +17,6 @@ import shutil
|
|||
import random
|
||||
import zipfile
|
||||
import traceback
|
||||
import threading
|
||||
import subprocess
|
||||
import PyQt5.QtGui as QtGui
|
||||
import PyQt5.QtCore as QtCore
|
||||
|
@ -89,9 +88,9 @@ class BuildApkDeb(QtCore.QThread):
|
|||
self.RunCommandShow("echo '写入文件,因为写入过程过于复杂,不显示写入命令……'")
|
||||
apkPackageName = GetApkPackageName(apkPath, False)
|
||||
if check.isChecked():
|
||||
apkPackageNameNew = GetApkPackageName(apkPath, True).lower()
|
||||
apkPackageNameNew = GetApkPackageName(apkPath, True).lower().replace("_", "-")
|
||||
else:
|
||||
apkPackageNameNew = GetApkPackageName(apkPath, False).lower()
|
||||
apkPackageNameNew = GetApkPackageName(apkPath, False).lower().replace("_", "-")
|
||||
apkPackageVersion = GetApkVersion(apkPath)
|
||||
if apkPackageVersion[0].upper() == "V":
|
||||
package = list(apkPackageVersion)
|
||||
|
@ -99,6 +98,9 @@ class BuildApkDeb(QtCore.QThread):
|
|||
apkPackageVersion = "".join(package)
|
||||
apkChineseLabel = GetApkChineseLabel(apkPath)
|
||||
apkActivityName = GetApkActivityName(apkPath)
|
||||
if sizes.isChecked() and os.path.exists(f"/usr/share/uengine/appetc/{apkPackageName}.txt"):
|
||||
os.makedirs(f"{tempPath}/usr/share/uengine/appetc")
|
||||
shutil.copy(f"/usr/share/uengine/appetc/{apkPackageName}.txt", f"{tempPath}/usr/share/uengine/appetc/{apkPackageName}.txt")
|
||||
iconSavePath = "{}/usr/share/uengine/icons/{}.png".format(tempPath, apkPackageNameNew)
|
||||
debControl = '''Package: {}
|
||||
Version: {}
|
||||
|
@ -373,7 +375,9 @@ def SaveApkIcon(apkFilePath, iconSavePath)->"获取 apk 文件的图标":
|
|||
|
||||
def TextboxAddText1(message):
|
||||
global textbox1
|
||||
textbox1.append(message)
|
||||
if message.replace(" ", "").replace("\n", "") == "":
|
||||
return
|
||||
textbox1.append(message.replace("\n", ""))
|
||||
|
||||
# 获取用户桌面目录
|
||||
def get_desktop_path():
|
||||
|
@ -442,6 +446,7 @@ button3 = QtWidgets.QPushButton(langFile[lang]["Uengine Apk Builder"]["button3"]
|
|||
textbox1 = QtWidgets.QTextBrowser()
|
||||
frame2 = QtWidgets.QHBoxLayout()
|
||||
check = QtWidgets.QCheckBox(langFile[lang]["Uengine Apk Builder"]["check"])
|
||||
sizes = QtWidgets.QCheckBox(langFile[lang]["Uengine Apk Builder"]["size"])
|
||||
label1.setSizePolicy(size)
|
||||
button2.setSizePolicy(size)
|
||||
check.setSizePolicy(size)
|
||||
|
@ -454,7 +459,7 @@ button3.clicked.connect(BuildDeb)
|
|||
widgetLayout.addWidget(label1, 0, 0, 1, 1)
|
||||
widgetLayout.addWidget(combobox1, 0, 1, 1, 1)
|
||||
widgetLayout.addWidget(button2, 0, 2, 1, 1)
|
||||
widgetLayout.addLayout(frame2, 1, 0, 1, 3)
|
||||
widgetLayout.addLayout(frame2, 1, 1, 1, 1)
|
||||
widgetLayout.addWidget(textbox1, 2, 0, 1, 3)
|
||||
# 菜单栏
|
||||
menu = window.menuBar()
|
||||
|
@ -464,6 +469,7 @@ exitProgram.triggered.connect(window.close)
|
|||
programmenu.addAction(exitProgram)
|
||||
#
|
||||
frame2.addWidget(check)
|
||||
frame2.addWidget(sizes)
|
||||
frame2.addWidget(button3)
|
||||
widget.setLayout(widgetLayout)
|
||||
window.setWindowTitle(title)
|
||||
|
@ -471,56 +477,4 @@ window.setCentralWidget(widget)
|
|||
window.setWindowIcon(QtGui.QIcon(iconPath))
|
||||
window.resize(window.frameSize().width() * 1.3, window.frameSize().height() * 1.1)
|
||||
window.show()
|
||||
sys.exit(app.exec_())
|
||||
# 读取主题
|
||||
try:
|
||||
theme = not ("dark" in readtxt(get_home() + "/.gtkrc-2.0") and "gtk-theme-name=" in readtxt(get_home() + "/.gtkrc-2.0"))
|
||||
except:
|
||||
print("主题读取错误,默认使用浅色主题")
|
||||
theme = True
|
||||
if theme:
|
||||
win = tk.Tk()
|
||||
themes = ttkthemes.ThemedStyle(win)
|
||||
themes.set_theme("breeze")
|
||||
else:
|
||||
import ttkbootstrap
|
||||
style = ttkbootstrap.Style(theme="darkly")
|
||||
win = style.master # 创建窗口
|
||||
|
||||
qianZhui = tk.BooleanVar()
|
||||
|
||||
window = ttk.Frame(win)
|
||||
frame2 = ttk.Frame(window)
|
||||
label1 = ttk.Label(window, text=langFile[lang]["Uengine Apk Builder"]["label1"])
|
||||
combobox1 = ttk.Combobox(window, width=100)
|
||||
button2 = ttk.Button(window, text=langFile[lang]["Uengine Apk Builder"]["button2"], command=FindApk)
|
||||
button3 = ttk.Button(frame2, text=langFile[lang]["Uengine Apk Builder"]["button3"], command=BuildDeb)
|
||||
check = ttk.Checkbutton(frame2, variable=qianZhui,text=langFile[lang]["Uengine Apk Builder"]["check"])
|
||||
textbox1 = tk.Text(window, width=100)
|
||||
menu = tk.Menu(window, background="white") # 设置菜单栏
|
||||
programmenu = tk.Menu(menu, tearoff=0, background="white") # 设置“程序”菜单栏
|
||||
|
||||
menu.add_cascade(label=langFile[lang]["Uengine Apk Builder"]["Menu"][0]["Name"], menu=programmenu)
|
||||
programmenu.add_command(label=langFile[lang]["Uengine Apk Builder"]["Menu"][0]["Menu"][0], command=window.quit) # 设置“退出程序”项
|
||||
# 设置控件
|
||||
combobox1['value'] = findApkHistory
|
||||
textbox1.configure(state=tk.DISABLED)
|
||||
textbox1.config(foreground='white', background='black')
|
||||
# 如果有参数
|
||||
if len(sys.argv) > 1:
|
||||
combobox1.set(sys.argv[1])
|
||||
# 设置窗口
|
||||
win.title(title)
|
||||
win.resizable(0, 0)
|
||||
win.iconphoto(False, tk.PhotoImage(file=iconPath))
|
||||
#
|
||||
win.config(menu=menu) # 显示菜单栏
|
||||
label1.grid(row=2, column=0)
|
||||
combobox1.grid(row=2, column=1)
|
||||
button2.grid(row=2, column=2)
|
||||
button3.grid(row=0, column=1)
|
||||
check.grid(row=0, column=0)
|
||||
frame2.grid(row=3, columnspa=3)
|
||||
textbox1.grid(row=4, columnspa=3)
|
||||
window.pack()
|
||||
win.mainloop()
|
||||
sys.exit(app.exec_())
|
|
@ -25,13 +25,11 @@ import traceback
|
|||
import threading
|
||||
import webbrowser
|
||||
import subprocess
|
||||
try:
|
||||
import matplotlib
|
||||
import matplotlib.figure
|
||||
import matplotlib.pylab
|
||||
import matplotlib.font_manager
|
||||
except:
|
||||
pass
|
||||
map = True
|
||||
import matplotlib
|
||||
import matplotlib.figure
|
||||
import matplotlib.pylab
|
||||
import matplotlib.font_manager
|
||||
import urllib.parse as parse
|
||||
import PyQt5.QtGui as QtGui
|
||||
import PyQt5.QtCore as QtCore
|
||||
|
@ -138,6 +136,7 @@ class InstallApk(QtCore.QThread):
|
|||
def run(self):
|
||||
path = self.path
|
||||
quit = self.quit
|
||||
# 将会强制改为拷贝安装,安装拷贝后的APK
|
||||
try:
|
||||
if not os.path.exists("/tmp/uengine-runner"):
|
||||
os.makedirs("/tmp/uengine-runner")
|
||||
|
@ -158,20 +157,19 @@ class InstallApk(QtCore.QThread):
|
|||
os.makedirs(iconSaveDir,exist_ok=True)
|
||||
SaveApkIcon(path, iconSavePath)
|
||||
try:
|
||||
if setting["SaveApk"]:
|
||||
shutil.copy(path, "/tmp/uengine-runner/bak.apk")
|
||||
shutil.copy(path, "/tmp/uengine-runner/bak.apk")
|
||||
except:
|
||||
if QtWidgets.QMessageBox.critical(widget, "错误", "无法备份安装包,是否不备份安装包继续安装?\n提示:新版UEngine安装后会自动删除安装包") == QtWidgets.QMessageBox.No:
|
||||
DisabledAndEnbled(False)
|
||||
return
|
||||
setting["SaveApk"] = False
|
||||
print("start install apk2")
|
||||
commandReturn = os.system("uengine install --apk='{}'".format(path))
|
||||
try:
|
||||
if setting["SaveApk"]:
|
||||
shutil.copy("/tmp/uengine-runner/bak.apk", path)
|
||||
except:
|
||||
self.error.emit(langFile[lang]["Main"]["MainWindow"]["Error"]["BackApkError"])
|
||||
QtWidgets.QMessageBox.critical(widget, "错误", "无法备份安装包,无法继续安装!")
|
||||
DisabledAndEnbled(False)
|
||||
return
|
||||
print(f"uengine install --apk='/tmp/uengine-runner/bak.apk'")
|
||||
commandReturn = os.system(f"uengine install --apk='/tmp/uengine-runner/bak.apk'")
|
||||
# 因为安装的是备份包,所以不需要再拷贝回去了(应该也没了)
|
||||
#try:
|
||||
# if setting["SaveApk"]:
|
||||
# shutil.copy("/tmp/uengine-runner/bak.apk", path)
|
||||
#except:
|
||||
# self.error.emit(langFile[lang]["Main"]["MainWindow"]["Error"]["BackApkError"])
|
||||
if commandReturn != 0:
|
||||
self.error.emit("疑似 APK 安装失败,请检查 UEngine 是否正常安装、运行以及 APK 文件是否正确、完整")
|
||||
DisabledAndEnbled(False)
|
||||
|
@ -493,11 +491,11 @@ def SaveApkIcon(apkFilePath, iconSavePath)->"保存 apk 文件的图标":
|
|||
saveIconFile.write(iconData)
|
||||
return
|
||||
print("None Icon! Show defult icon")
|
||||
shutil.copy(programPath + "/defult.png", iconSavePath)
|
||||
shutil.copy(programPath + "/defult.svg", iconSavePath)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
print("Error, show defult icon")
|
||||
shutil.copy(programPath + "/defult.png", iconSavePath)
|
||||
shutil.copy(programPath + "/defult.svg", iconSavePath)
|
||||
|
||||
def saveicon():
|
||||
global temppath
|
||||
|
@ -1005,8 +1003,8 @@ class SettingWindow():
|
|||
cancalButton = QtWidgets.QPushButton("取消")
|
||||
okButton = QtWidgets.QPushButton("保存")
|
||||
|
||||
settingLayout.addWidget(QtWidgets.QLabel("APK 安装模式:"), 0, 0, 1, 1)
|
||||
settingLayout.addWidget(SettingWindow.saveApkOption, 0, 1, 1, 1)
|
||||
#settingLayout.addWidget(QtWidgets.QLabel("APK 安装模式:"), 0, 0, 1, 1)
|
||||
#settingLayout.addWidget(SettingWindow.saveApkOption, 0, 1, 1, 1)
|
||||
settingLayout.addWidget(QtWidgets.QLabel("窗口大小策略:"), 1, 0, 1, 1)
|
||||
settingLayout.addWidget(SettingWindow.autoScreenConfig, 1, 1, 1, 1)
|
||||
settingLayout.addWidget(QtWidgets.QLabel("程序分类策略:"), 2, 0, 1, 1)
|
||||
|
@ -1080,7 +1078,7 @@ class UpdateWindow():
|
|||
cancel = QtWidgets.QPushButton("取消")
|
||||
cancel.clicked.connect(UpdateWindow.update.close)
|
||||
try:
|
||||
UpdateWindow.data = json.loads(requests.get("http://120.25.153.144/uengine-runner/update.json").text)
|
||||
UpdateWindow.data = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/update.json").text)
|
||||
versionLabel = QtWidgets.QLabel(f"当前版本:{version}\n最新版本:{UpdateWindow.data['Version']}\n更新内容:")
|
||||
if UpdateWindow.data["Version"] == version:
|
||||
updateText.setText("此为最新版本,无需更新")
|
||||
|
@ -1151,7 +1149,7 @@ class ApkInformation():
|
|||
tab1Layout = QtWidgets.QGridLayout()
|
||||
SaveApkIcon(path, "/tmp/uengine-runner-android-app-icon.png")
|
||||
simpleInformation = QtWidgets.QLabel(f"""
|
||||
<p align='center'><img src='/tmp/uengine-runner-android-app-icon.png'></p>
|
||||
<p align='center'><img width='256' src='/tmp/uengine-runner-android-app-icon.png'></p>
|
||||
<p>包名:{GetApkPackageName(path)}</p>
|
||||
<p>中文名:{GetApkChineseLabel(path)}</p>
|
||||
<p>Activity:{GetApkActivityName(path)}</p>
|
||||
|
@ -1159,6 +1157,7 @@ class ApkInformation():
|
|||
|
||||
seeFen = QtWidgets.QPushButton("查看程序评分情况")
|
||||
updFen = QtWidgets.QPushButton("上传程序评分情况")
|
||||
seeFen.setEnabled(map)
|
||||
seeFen.clicked.connect(ApkInformation.ShowMap)
|
||||
updFen.clicked.connect(ApkInformation.UpdateMark)
|
||||
tab1Layout.addWidget(simpleInformation, 0, 0, 1, 3)
|
||||
|
@ -1218,7 +1217,7 @@ class ApkInformation():
|
|||
if choose == None or choose == 7:
|
||||
return
|
||||
try:
|
||||
QtWidgets.QMessageBox.critical(widget, "提示", requests.post("http://120.25.153.144/uengine-runner/app/check/add.php", {"Package": GetApkPackageName(path), "Type": choose}).text)
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post("https://304626p927.goho.co/uengine-runner/app/check/add.php", {"Package": GetApkPackageName(path), "Type": choose}).text)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
QtWidgets.QMessageBox.critical(widget, "错误", langFile[lang]["Main"]["MainWindow"]["Error"]["ConnectServerStarError"])
|
||||
|
@ -1230,7 +1229,7 @@ class ApkInformation():
|
|||
QtWidgets.QMessageBox.critical(widget, "错误", langFile[lang]["Main"]["MainWindow"]["Error"]["ApkFileError"])
|
||||
return
|
||||
try:
|
||||
data = json.loads(requests.get("http://120.25.153.144/uengine-runner/app/check/" + package +"/data.json").text)
|
||||
data = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/app/check/" + package +"/data.json").text)
|
||||
print(data)
|
||||
except:
|
||||
QtWidgets.QMessageBox.information(widget, "提示", "此程序暂时没有评分,欢迎您贡献第一个评分!")
|
||||
|
@ -1520,25 +1519,26 @@ if not os.path.exists(get_home() + "/.config/uengine-runner/SaveApkIcon.json"):
|
|||
if not os.path.exists(get_home() + "/.config/uengine-runner/SaveApk.json"): # 如果没有配置文件
|
||||
write_txt(get_home() + "/.config/uengine-runner/SaveApk.json", json.dumps({"path": "~"})) # 写入(创建)一个配置文件
|
||||
if not os.path.exists(get_home() + "/.config/uengine-runner/setting.json"):
|
||||
choosemsg = QtWidgets.QMessageBox()
|
||||
choosemsg.setText("""在使用本程序前,请选择安装Apk包的设置以便更好的运行,下列选项的详细介绍:
|
||||
|
||||
不备份Apk包直接安装:适用于Deepin(旧版UEngine),安装较快,不受/tmp大小所限,但Deepin23和UOS(新版UEngine)不推荐此选项,因为安装后会自动删除Apk安装包;
|
||||
备份Apk包然后在安装后自动拷贝原先目录:适用于Deepin23和UOS(新版UEngine),安装较慢,受/tmp大小所限,安装后不会丢失Apk,Deepin(旧版UEngine)不推荐使用该选项;
|
||||
|
||||
|
||||
后期可以在程序主界面的菜单栏的“程序”=>“设置”里进行修改,
|
||||
如果不知道正在使用的系统是什么版本可以打开系统设置查看。
|
||||
""")
|
||||
choosemsg.setWindowTitle("设置")
|
||||
choose = None
|
||||
choosemsg.addButton("不备份Apk包直接安装", QtWidgets.QMessageBox.ActionRole).clicked.connect(lambda: BackAPK(0))
|
||||
choosemsg.addButton("备份Apk包然后在安装后自动拷贝原先目录", QtWidgets.QMessageBox.ActionRole).clicked.connect(lambda: BackAPK(1))
|
||||
choosemsg.exec_()
|
||||
if choose == None:
|
||||
QtWidgets.QMessageBox.information(None, "提示", "必须选择一个选项!否则无法进入程序!")
|
||||
sys.exit()
|
||||
write_txt(get_home() + "/.config/uengine-runner/setting.json", json.dumps({"SaveApk": int(choose)}))
|
||||
write_txt(get_home() + "/.config/uengine-runner/setting.json", json.dumps({"SaveApk": int(1)}))
|
||||
# choosemsg = QtWidgets.QMessageBox()
|
||||
# choosemsg.setText("""在使用本程序前,请选择安装Apk包的设置以便更好的运行,下列选项的详细介绍:
|
||||
#
|
||||
#不备份Apk包直接安装:适用于Deepin(旧版UEngine),安装较快,不受/tmp大小所限,但Deepin23和UOS(新版UEngine)不推荐此选项,因为安装后会自动删除Apk安装包;
|
||||
#备份Apk包然后在安装后自动拷贝原先目录:适用于Deepin23和UOS(新版UEngine),安装较慢,受/tmp大小所限,安装后不会丢失Apk,Deepin(旧版UEngine)不推荐使用该选项;
|
||||
#
|
||||
#
|
||||
#后期可以在程序主界面的菜单栏的“程序”=>“设置”里进行修改,
|
||||
#如果不知道正在使用的系统是什么版本可以打开系统设置查看。
|
||||
#""")
|
||||
# choosemsg.setWindowTitle("设置")
|
||||
# choose = None
|
||||
# choosemsg.addButton("不备份Apk包直接安装", QtWidgets.QMessageBox.ActionRole).clicked.connect(lambda: BackAPK(0))
|
||||
# choosemsg.addButton("备份Apk包然后在安装后自动拷贝原先目录", QtWidgets.QMessageBox.ActionRole).clicked.connect(lambda: BackAPK(1))
|
||||
# choosemsg.exec_()
|
||||
# if choose == None:
|
||||
# QtWidgets.QMessageBox.information(None, "提示", "必须选择一个选项!否则无法进入程序!")
|
||||
# sys.exit()
|
||||
# write_txt(get_home() + "/.config/uengine-runner/setting.json", json.dumps({"SaveApk": int(choose)}))
|
||||
defultProgramList = {
|
||||
"SaveApk": 1,
|
||||
"AutoScreenConfig": False,
|
||||
|
@ -1569,7 +1569,7 @@ findApkNameHistory = list(json.loads(readtxt(get_home() + "/.config/uengine-runn
|
|||
findApkActivityHistory = list(json.loads(readtxt(get_home() + "/.config/uengine-runner/FindApkActivityHistory.json")).values())
|
||||
|
||||
try:
|
||||
threading.Thread(target=requests.get, args=[parse.unquote(base64.b64decode("aHR0cDovLzEyMC4yNS4xNTMuMTQ0L3VlbmdpbmUtcnVubmVyL29wZW4vSW5zdGFsbC5waHA=").decode("utf-8")) + "?Version=" + version]).start()
|
||||
threading.Thread(target=requests.get, args=[parse.unquote(base64.b64decode("aHR0cHM6Ly8zMDQ2MjZwOTI3LmdvaG8uY28vdWVuZ2luZS1ydW5uZXIvb3Blbi9JbnN0YWxsLnBocA==").decode("utf-8")) + "?Version=" + version]).start()
|
||||
except:
|
||||
pass
|
||||
# add sub window
|
||||
|
@ -1577,10 +1577,10 @@ except:
|
|||
windowflag = "close"
|
||||
def Egg():
|
||||
try:
|
||||
lists = json.loads(requests.get("http://120.25.153.144/uengine-runner/VersionList.json").text)
|
||||
lists = json.loads(requests.get("https://304626p927.goho.co/uengine-runner/VersionList.json").text)
|
||||
data = []
|
||||
for i in lists:
|
||||
data.append(int(requests.get("http://120.25.153.144/uengine-runner/{}/data.txt".format(i)).text))
|
||||
data.append(int(requests.get("https://304626p927.goho.co/uengine-runner/{}/data.txt".format(i)).text))
|
||||
except:
|
||||
QtWidgets.QMessageBox.critical(widget, "错误", "服务器出错!数据获取失败!")
|
||||
return
|
||||
|
@ -1643,7 +1643,7 @@ def showhelp():
|
|||
|
||||
helpWidget.setLayout(helpLayout)
|
||||
helpWindow.setCentralWidget(helpWidget)
|
||||
helpWindow.setFixedSize(helpWindow.frameSize().width() * 0.9, helpWindow.frameSize().height() * 1.5)
|
||||
helpWindow.setFixedSize(int(helpWindow.frameSize().width() * 0.9), int(helpWindow.frameSize().height() * 1.5))
|
||||
helpWindow.setWindowTitle("帮助")
|
||||
helpWindow.setWindowIcon(QtGui.QIcon(iconPath))
|
||||
helpWindow.show()
|
||||
|
|
|
@ -27,7 +27,7 @@ def Update(name, stars, contact, things, version):
|
|||
"Version": version
|
||||
}
|
||||
try:
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post(parse.unquote(base64.b64decode("aHR0cCUzQS8vMTIwLjI1LjE1My4xNDQvdWVuZ2luZS1ydW5uZXIvYnVnL3VwbG9hZC5waHA=").decode("utf-8")), data=data).text)
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post(parse.unquote(base64.b64decode("aHR0cHM6Ly8zMDQ2MjZwOTI3LmdvaG8uY28vdWVuZ2luZS1ydW5uZXIvYnVnL3VwbG9hZC5waHA=").decode("utf-8")), data=data).text)
|
||||
print(data)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
|
|
|
@ -27,7 +27,7 @@ def Update(name, stars, contact, things, version):
|
|||
"Version": version
|
||||
}
|
||||
try:
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post(parse.unquote(base64.b64decode("aHR0cCUzQS8vMTIwLjI1LjE1My4xNDQvdWVuZ2luZS1ydW5uZXIvYnVnL3VwbG9hZC5waHA=").decode("utf-8")), data=data).text)
|
||||
QtWidgets.QMessageBox.information(widget, "提示", requests.post(parse.unquote(base64.b64decode("aHR0cHM6Ly8zMDQ2MjZwOTI3LmdvaG8uY28vdWVuZ2luZS1ydW5uZXIvYnVnL3VwbG9hZC5waHA=").decode("utf-8")), data=data).text)
|
||||
print(data)
|
||||
except:
|
||||
traceback.print_exc()
|
||||
|
|
Loading…
Reference in New Issue