diff --git a/UengineAndroidProgramList.desktop b/UengineAndroidProgramList.desktop
index a8821d7..8ff8e7a 100755
--- a/UengineAndroidProgramList.desktop
+++ b/UengineAndroidProgramList.desktop
@@ -2,7 +2,7 @@
Categories=System;
Comment=UEngine 程序菜单
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
+Exec=/usr/bin/uengine launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
Icon=/opt/apps/uengine-runner/icon.png
MimeType=
Name=UEngine 程序菜单
diff --git a/build/DEBIAN/control b/build/DEBIAN/control
index 7d5c249..cc057c3 100644
--- a/build/DEBIAN/control
+++ b/build/DEBIAN/control
@@ -1,10 +1,10 @@
Package: spark-uengine-runner
-Version: 1.5.0
+Version: 1.5.1
Maintainer: gfdgd xi <3025613752@qq.com>, actionchen<917981399@qq.com>
Homepage: [https://gitee.com/gfdgd-xi/uengine-runner, https://github.com/gfdgd-xi/uengine-runner]
Architecture: all
Priority: optional
Conflicts: com.gitee.uengine.runner.spark, spark-uengine-apk-builder
-Depends: python3, python3-tk, python3-pip, aapt, uengine, python3-pil, python3-setuptools, deepin-terminal, curl
+Depends: python3, python3-tk, python3-pip, aapt, uengine, python3-pil, python3-setuptools, deepin-terminal, curl, python3-pil, python3-pil.imagetk
Description: UEngine Runner for deepin and UOS
diff --git a/build/opt/apps/uengine-runner/Language.json b/build/opt/apps/uengine-runner/Language.json
index 8fa00f2..5e4a2e7 100644
--- a/build/opt/apps/uengine-runner/Language.json
+++ b/build/opt/apps/uengine-runner/Language.json
@@ -3,7 +3,7 @@
"Main": {
"MainWindow": {
"Title": "UEngine 运行器",
- "LabApkPath": "安装 APK:",
+ "LabApkPath": "安装/卸载 APK:",
"LabUninstallPath": "卸载 Apk:",
"BtnFindApk": "浏览",
"BtnInstall": "安装",
@@ -12,6 +12,7 @@
"BtnUninstall": "卸载",
"Btngeticon": "保存图标",
"BtnSaveApk": "保存Apk",
+ "BtnApkInformation": "Apk 信息",
"Menu": [
{
"Name": "程序",
@@ -125,8 +126,7 @@
"Main": {
"MainWindow": {
"Title": "UEngine Runner",
- "LabApkPath": "Install Apk:",
- "LabUninstallPath": "Uninstall Apk",
+ "LabApkPath": "Install Or Uninstall Apk:",
"BtnFindApk": "Find",
"BtnInstall": "Install",
"BtnShowUengineApp": "Open UEngine App List",
@@ -134,6 +134,7 @@
"BtnUninstall": "Uninstall",
"Btngeticon": "Save Apk Icon",
"BtnSaveApk": "Saving Installed App Apk",
+ "BtnApkInformation": "Apk Information",
"Menu": [
{
"Name": "Program",
diff --git a/build/opt/apps/uengine-runner/UengineAndroidProgramList.desktop b/build/opt/apps/uengine-runner/UengineAndroidProgramList.desktop
index 1b126d3..110309e 100755
--- a/build/opt/apps/uengine-runner/UengineAndroidProgramList.desktop
+++ b/build/opt/apps/uengine-runner/UengineAndroidProgramList.desktop
@@ -1,11 +1,11 @@
[Desktop Entry]
Categories=System;
-Comment=uengine(anbox) 程序菜单
+Comment=UEngine 程序菜单
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
+Exec=/usr/bin/uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
Icon=/opt/apps/uengine-runner/icon.png
MimeType=
-Name=uengine 程序菜单
-StartupWMClass=uengine 程序菜单
+Name=UEngine 程序菜单
+StartupWMClass=UEngine 程序菜单
Terminal=false
Type=Application
diff --git a/build/opt/apps/uengine-runner/information.json b/build/opt/apps/uengine-runner/information.json
index 9bbd05c..e9a5b16 100755
--- a/build/opt/apps/uengine-runner/information.json
+++ b/build/opt/apps/uengine-runner/information.json
@@ -3,7 +3,7 @@
"https://gitee.com/gfdgd-xi/uengine-runner",
"https://github.com/gfdgd-xi/uengine-runner"
],
- "Version": "1.5.0",
+ "Version": "1.5.1",
"System": "Linux(deepin/UOS)",
"Tips": [
"更多可见:https://gitee.com/gfdgd-xi/uengine-runner/wikis",
diff --git a/build/opt/apps/uengine-runner/setting.json b/build/opt/apps/uengine-runner/setting.json
index be23244..d4f0364 100755
--- a/build/opt/apps/uengine-runner/setting.json
+++ b/build/opt/apps/uengine-runner/setting.json
@@ -1,7 +1,7 @@
{
"Package": "spark-uengine-runner",
"Update": true,
- "Version": "1.5.0",
+ "Version": "1.5.1",
"Url": "https://gfdgd-xi.github.io/update-program/data/UpdateInformation.json"
}
\ No newline at end of file
diff --git a/build/opt/apps/uengine-runner/uengine-apk-builder b/build/opt/apps/uengine-runner/uengine-apk-builder
index d78a287..fbbf991 100755
--- a/build/opt/apps/uengine-runner/uengine-apk-builder
+++ b/build/opt/apps/uengine-runner/uengine-apk-builder
@@ -148,7 +148,7 @@ done
exit 0'''.format(apkPackageName)
desktopFile = '''[Desktop Entry]
Categories=Other;
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
Icon=/usr/share/uengine/icons/{}.png
Terminal=false
Type=Application
@@ -294,7 +294,7 @@ def BuildUengineDesktop(packageName, activityName, showName, iconPath, savePath)
[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=/usr/bin/uengine launch.sh --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
@@ -313,16 +313,16 @@ def GetApkChineseLabel(apkFilePath):
line = line.replace("'", "")
return line
-def GetApkIconInApk(apkFilePath):
- info = GetApkInformation(apkFilePath)
- for line in info.split('\n'):
- if "application:" in line:
- line = line[line.index("icon='"): -1]
- line = line.replace("icon='", "")
- if "'" in line:
- line = line[0: line.index("'")]
- return line
- return line
+#def GetApkIconInApk(apkFilePath):
+# info = GetApkInformation(apkFilePath)
+# for line in info.split('\n'):
+# if "application:" in line:
+# line = line[line.index("icon='"): -1]
+# line = line.replace("icon='", "")
+# if "'" in line:
+# line = line[0: line.index("'")]
+# return line
+# return line
#合并两个函数到一起
def SaveApkIcon(apkFilePath, iconSavePath)->"获取 apk 文件的图标":
diff --git a/build/opt/apps/uengine-runner/uengine-install (1).desktop b/build/opt/apps/uengine-runner/uengine-install (1).desktop
new file mode 100755
index 0000000..e386dfa
--- /dev/null
+++ b/build/opt/apps/uengine-runner/uengine-install (1).desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Categories=system;Utility;
+Encoding=UTF-8
+Exec=uengine-runner -ci %F
+GenericName=APK Install(UEngine)
+GenericName[zh_CN]=APK 安装(UEngine)
+Icon=/opt/apps/uengine-runner/icon.png
+MimeType=application/apk;
+Name=APK Install(UEngine)
+Name[zh_CN]=APK 安装(UEngine)
+NoDisplay=true
+OnlyShowIn=Unity;
+StartupNotify=false
+StartupWMClass=APK 安装(UEngine)
+Terminal=false
+Type=Application
diff --git a/build/opt/apps/uengine-runner/uengine-runner b/build/opt/apps/uengine-runner/uengine-runner
index 5a05069..50ff1c7 100755
--- a/build/opt/apps/uengine-runner/uengine-runner
+++ b/build/opt/apps/uengine-runner/uengine-runner
@@ -22,6 +22,8 @@ import threading
import ttkthemes
import webbrowser
import subprocess
+import PIL.Image as Image
+import PIL.ImageTk as ImageTk
import tkinter as tk
import tkinter.ttk as ttk
import tkinter.messagebox as messagebox
@@ -39,37 +41,38 @@ def UninstallProgram(package: "apk 包名")->"卸载程序":
os.remove("{}/.local/share/applications/{}.desktop".format(get_home(), package))
if os.path.exists("{}/{}.desktop".format(get_desktop_path(), package)):
os.remove("{}/{}.desktop".format(get_desktop_path(), package))
- fineUninstallApkHistory.append(ComboUninstallPath.get())
- ComboUninstallPath['value'] = fineUninstallApkHistory
- write_txt(get_home() + "/.config/uengine-runner/FindUninstallApkHistory.json", str(json.dumps(ListToDictionary(fineUninstallApkHistory)))) # 将历史记录的数组转换为字典并写入
+ findApkHistory.append(ComboInstallPath.get())
+ ComboInstallPath['value'] = findApkHistory
+ write_txt(get_home() + "/.config/uengine-runner/FindApkHistory.json", str(json.dumps(ListToDictionary(findApkHistory)))) # 将历史记录的数组转换为字典并写入
+ messagebox.showinfo(message="操作执行完毕!", title="提示")
+ DisabledAndEnbled(False)
return Return
except:
traceback.print_exc()
messagebox.showerror(title="错误", message=traceback.format_exc())
+ DisabledAndEnbled(False)
# 卸载文本框的浏览按钮事件
-def BtnFindUninstallApkClk():
- path = filedialog.askopenfilename(title="选择 Apk", filetypes=[("APK 文件", "*.apk"), ("所有文件", "*.*")], initialdir=json.loads(readtxt(get_home() + "/.config/uengine-runner/FindUninstallApk.json"))["path"])
- if path != "" and path != "()":
- try:
- ComboUninstallPath.set(path)
- write_txt(get_home() + "/.config/uengine-runner/FindUninstallApk.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
- except:
- pass
+#def BtnFindUninstallApkClk():
+# path = filedialog.askopenfilename(title="选择 Apk", filetypes=[("APK 文件", "*.apk"), ("所有文件", "*.*")], initialdir=json.loads(readtxt(get_home() + "/.config/uengine-runner/FindUninstallApk.json"))["path"])
+# if path != "" and path != "()":
+# try:
+# ComboUninstallPath.set(path)
+# write_txt(get_home() + "/.config/uengine-runner/FindUninstallApk.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
+# except:
+# pass
# 卸载按钮事件
def ButtonClick8():
- if ComboUninstallPath.get() is "":
+ if ComboInstallPath.get() is "":
messagebox.showerror(title="提示", message="信息没有填写完整,无法继续卸载 APK")
return
DisabledAndEnbled(True)
- if os.path.exists(ComboUninstallPath.get()):
- path = GetApkPackageName(ComboUninstallPath.get())
+ if os.path.exists(ComboInstallPath.get()):
+ path = GetApkPackageName(ComboInstallPath.get())
else:
- path = ComboUninstallPath.get()
- UninstallProgram(path)
- messagebox.showinfo(message="操作执行完毕!", title="提示")
- DisabledAndEnbled(False)
+ path = ComboInstallPath.get()
+ threading.Thread(target=UninstallProgram, args=[path]).start()
# 浏览窗口
# temp strs
@@ -136,14 +139,16 @@ def DisabledAndEnbled(choose: "启动或者禁用")->"禁用或启动所有控
userChoose = {True: tk.DISABLED, False: tk.NORMAL}
a = userChoose[choose]
ComboInstallPath.configure(state=a)
- ComboUninstallPath.configure(state=a)
+ #ComboUninstallPath.configure(state=a)
BtnFindApk.configure(state=a)
BtnInstall.configure(state=a)
BtnShowUengineApp.configure(state=a)
- BtnUninstallApkBrowser.configure(state=a)
+ #BtnUninstallApkBrowser.configure(state=a)
BtnUninstall.configure(state=a)
Btngeticon.configure(state=a)
BtnSaveApk.configure(state=a)
+ BtnApkInformation.configure(state=a)
+ LabApkPath.configure(state=a)
# 需引入 subprocess
# 运行系统命令并获取返回值
@@ -157,27 +162,27 @@ def Button5Click():
# 打开“uengine 所有程序列表”
def OpenUengineProgramList()->"打开“uengine 所有程序列表”":
- os.system("/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
+ os.system("uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
# 显示“关于这个程序”窗口
-def about_this_program()->"显示“关于这个程序”窗口":
- global about
- global title
- global iconPath
- mess = tk.Toplevel()
- message = ttk.Frame(mess)
- mess.resizable(0, 0)
- mess.title("关于 {}".format(title))
- #mess.iconphoto(False, tk.PhotoImage(file=iconPath))
- img = ImageTk.PhotoImage(Image.open(iconPath))
- LabApkPath = ttk.Label(message, image=img)
- label2 = ttk.Label(message, text=about)
- button1 = ttk.Button(message, text="确定", command=mess.withdraw)
- LabApkPath.pack()
- label2.pack()
- button1.pack(side="bottom")
- message.pack()
- mess.mainloop()
+#def about_this_program()->"显示“关于这个程序”窗口":
+# global about
+# global title
+# global iconPath
+# mess = tk.Toplevel()
+# message = ttk.Frame(mess)
+# mess.resizable(0, 0)
+# mess.title("关于 {}".format(title))
+# #mess.iconphoto(False, tk.PhotoImage(file=iconPath))
+# img = ImageTk.PhotoImage(Image.open(iconPath))
+# LabApkPath = ttk.Label(message, image=img)
+# label2 = ttk.Label(message, text=about)
+# button1 = ttk.Button(message, text="确定", command=mess.withdraw)
+# LabApkPath.pack()
+# label2.pack()
+# button1.pack(side="bottom")
+# message.pack()
+# mess.mainloop()
# 显示“提示”窗口
def helps()->"显示“提示”窗口":
@@ -324,7 +329,7 @@ def BuildUengineDesktop(packageName: "软件包名", activityName: "activity", s
things = '''[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
@@ -545,7 +550,7 @@ def AdbCPUAndRAWShowInTer():
threading.Thread(target=os.system, args=["deepin-terminal -w ~ -e 'adb -s 192.168.250.2:5555 shell top'"]).start()
def UengineSettingShow():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
# 杀死 adb 进程
def AdbKillAdbProgress():
@@ -594,6 +599,67 @@ def AdbAndroidInstallAppList():
subprocess.getoutput("adb -s 192.168.250.2:5555 shell pm list package -3"),
subprocess.getoutput("adb -s 192.168.250.2:5555 shell pm list packages -f")))
+def GetApkVersion(apkFilePath):
+ info = GetApkInformation(apkFilePath)
+ for line in info.split('\n'):
+ if "package:" in line:
+ if "compileSdkVersion='" in line:
+ line = line.replace(line[line.index("compileSdkVersion='"): -1], "")
+ if "platform" in line:
+ line = line.replace(line[line.index("platform"): -1], "")
+ line = line.replace(line[0: line.index("versionName='")], "")
+ line = line.replace("versionName='", "")
+ line = line.replace("'", "")
+ line = line.replace(" ", "")
+ return line
+
+class ApkInformation():
+ def ShowWindows():
+ global fullInformation
+ global path
+ global tab1
+ path = ComboInstallPath.get()
+
+ message = tk.Toplevel()
+
+ tab = ttk.Notebook(message)
+
+ tab1 = ttk.Frame(message)
+ tab2 = ttk.Frame(message)
+
+ fullInformation = tk.Text(tab2)
+
+ tab.add(tab1, text="简化版")
+ tab.add(tab2, text="完整版")
+
+ fullInformation.pack(expand="yes", fill="both")
+
+ tab.pack(expand="yes", fill="both")
+
+ threading.Thread(target=ApkInformation.GetInformation).start()
+
+ message.mainloop()
+
+ def GetInformation():
+ # 获取详细信息
+ fullInformation.configure(state=tk.NORMAL)
+ fullInformation.insert("1.0", GetApkInformation(path))
+ fullInformation.configure(state=tk.DISABLED)
+ # 获取图标
+ SaveApkIcon(path, "/tmp/uengine-runner-android-app-icon.png")
+ # 读取图标
+ image = Image.open("/tmp/uengine-runner-android-app-icon.png")
+ if image.size[0] + image.size[1] <= 512:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image)).pack()
+ else:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image.resize((256, 256), Image.ANTIALIAS))).pack()
+ info = '''包名:{}
+中文名:{}
+Activity:{}
+版本:{}'''.format(GetApkPackageName(path), GetApkChineseLabel(path), GetApkActivityName(path), GetApkVersion(path))
+ ttk.Label(tab1, text=info).pack()
+
+
class AdbChangeUengineDisplaySize():
def ShowWindows():
global displayX
@@ -817,7 +883,7 @@ class AddNewUengineDesktopLink():
# 打开测试
def TestOpen():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --package={} --component={}".format(packageName.get(), activityName.get())]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --package={} --component={}".format(packageName.get(), activityName.get())]).start()
AddNewUengineDesktopLink.SaveHistory()
# 浏览文件
@@ -826,7 +892,7 @@ class AddNewUengineDesktopLink():
if path == "" or path == ():
return
packageName.set(GetApkPackageName(path))
- activityName.set(GetApkActivityName(path))
+ activityName.set(str(GetApkActivityName(path)))
write_txt(get_home() + "/.config/uengine-runner/FindApkName.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
def UseProgram():
@@ -1036,18 +1102,19 @@ win.geometry(""+"+{:.0f}+{:.0f}".format(x, y))
# 创建控件
FrmInstall = ttk.Frame(window)
-FrmUninstall = ttk.Frame(window)
+#FrmUninstall = ttk.Frame(window)
LabApkPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabApkPath"])
-LabUninstallPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabUninstallPath"])
+#LabUninstallPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabUninstallPath"])
ComboInstallPath = ttk.Combobox(window, width=50)
-ComboUninstallPath = ttk.Combobox(window, width=50)
+#ComboUninstallPath = ttk.Combobox(window, width=50)
BtnFindApk = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnFindApk"], command=FindApk)
BtnInstall = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnInstall"], command=Button3Install)
BtnShowUengineApp = ttk.Button(window, text=langFile[lang]["Main"]["MainWindow"]["BtnShowUengineApp"], command=Button5Click)
-BtnUninstallApkBrowser = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstallApkBrowser"], command=BtnFindUninstallApkClk)
-BtnUninstall = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstall"], command=ButtonClick8)
+#BtnUninstallApkBrowser = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstallApkBrowser"], command=BtnFindUninstallApkClk)
+BtnUninstall = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstall"], command=ButtonClick8)
Btngeticon = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["Btngeticon"], command=SaveIconToOtherPath)
BtnSaveApk = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnSaveApk"], command=SaveInstallUengineApp)
+BtnApkInformation = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnApkInformation"], command=ApkInformation.ShowWindows)
# 设置菜单栏
menu = tk.Menu(window, background="white")
@@ -1103,8 +1170,8 @@ help.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][0
help.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][1], command=showhelp) # 设置“关于这个程序”项
uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=StartUengine)
-uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=StopUengine)
-uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=UengineRestart)
+uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][1], command=StopUengine)
+uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][2], command=UengineRestart)
uengineInternet.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][3]["Menu"][0], command=UengineBridgeStart)
uengineInternet.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][3]["Menu"][1], command=UengineBridgeStop)
@@ -1141,14 +1208,15 @@ uengineUseAdb.configure(activebackground="dodgerblue")
uengineData.configure(activebackground="dodgerblue")
# 设置控件
-ComboUninstallPath['value'] = fineUninstallApkHistory
+#ComboUninstallPath['value'] = fineUninstallApkHistory
ComboInstallPath['value'] = findApkHistory
try:
if sys.argv[1] == "-i":
ComboInstallPath.set(sys.argv[2])
print("Install Path: " + sys.argv[2])
elif sys.argv[1] == "-u":
- ComboUninstallPath.set(sys.argv[2])
+ #ComboUninstallPath.set(sys.argv[2])
+ ComboInstallPath.set(sys.argv[2])
print("Unstall Path: " + sys.argv[2])
else:
print("Command Format Error")
@@ -1159,25 +1227,26 @@ win.config(menu=menu) # 显示菜单栏
-LabApkPath.grid(row=1, column=0,sticky= tk.W,padx=3)
-ComboInstallPath.grid(row=2, column=0,padx=3)
+LabApkPath.grid(row=0, column=0,sticky= tk.W,padx=3)
+ComboInstallPath.grid(row=1, column=0,padx=3)
-FrmInstall.grid(row=2, column=1,padx=3, rowspan=2)
+FrmInstall.grid(row=0, column=1,padx=3, rowspan=3)
BtnFindApk.grid(row=0, column=0)
BtnInstall.grid(row=0, column=1)
-LabUninstallPath.grid(row=4, column=0,sticky= tk.W,padx=3)
-ComboUninstallPath.grid(row=5, column=0,padx=3)
+#LabUninstallPath.grid(row=4, column=0,sticky= tk.W,padx=3)
+#ComboUninstallPath.grid(row=5, column=0,padx=3)
-FrmUninstall.grid(row=5, column=1,padx=3)
-BtnUninstallApkBrowser.grid(row=0, column=0)
-BtnUninstall.grid(row=0, column=1)
+#FrmUninstall.grid(row=5, column=1,padx=3)
+#BtnUninstallApkBrowser.grid(row=0, column=0)
+BtnUninstall.grid(row=1, column=0)
-BtnShowUengineApp.grid(row=6, column=0,sticky= tk.W,padx=3,pady=2)
+BtnShowUengineApp.grid(row=2, column=0,sticky= tk.W,padx=3,pady=2)
-Btngeticon.grid(row=1, column=0,sticky= tk.W,padx=3,pady=2)
-BtnSaveApk.grid(row=1, column=1,sticky= tk.W,padx=3,pady=2)
+BtnApkInformation.grid(row=2, column=1,sticky= tk.W,padx=3,pady=2)
+Btngeticon.grid(row=1, column=1,sticky= tk.W,padx=3,pady=2)
+BtnSaveApk.grid(row=2, column=0,sticky= tk.W,padx=3,pady=2)
window.pack()
diff --git a/build/opt/apps/uengine-runner/uengine-runner-launch.sh b/build/opt/apps/uengine-runner/uengine-runner-launch.sh
new file mode 100755
index 0000000..3e09ebd
--- /dev/null
+++ b/build/opt/apps/uengine-runner/uengine-runner-launch.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+# 忽略社区版检测
+
+pkgRunCnt=`ps -ef |grep "uengine launch" |grep -v grep |grep "$pkg" |wc -l`
+if [ $pkgRunCnt -ge 1 ]; then
+ #防止短时间内多次打开同一应用,如果应用正在启动中,此次忽略
+ exit 0
+fi
+
+#等Session服务启动完全
+wscont=0
+isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+if [ "$isReady" != "b true" ] ;then
+ sleep 2
+fi
+while [ "$isReady" = "b false" -a $wscont -lt 10 ]
+do
+ sleep 1
+ isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+ let wscont++
+done
+
+uengine launch $*
diff --git a/build/opt/apps/uengine-runner/uengine_logo.svg b/build/opt/apps/uengine-runner/uengine_logo.svg
new file mode 100644
index 0000000..c77d1fe
--- /dev/null
+++ b/build/opt/apps/uengine-runner/uengine_logo.svg
@@ -0,0 +1,153 @@
+
+
\ No newline at end of file
diff --git a/build/usr/bin/uengine-runner-launch.sh b/build/usr/bin/uengine-runner-launch.sh
new file mode 120000
index 0000000..4439cb3
--- /dev/null
+++ b/build/usr/bin/uengine-runner-launch.sh
@@ -0,0 +1 @@
+/opt/apps/uengine-runner/uengine-runner-launch.sh
\ No newline at end of file
diff --git a/build/usr/share/applications/UengineAndroidProgramList.desktop b/build/usr/share/applications/UengineAndroidProgramList.desktop
index 8ff03ad..79d71dc 100644
--- a/build/usr/share/applications/UengineAndroidProgramList.desktop
+++ b/build/usr/share/applications/UengineAndroidProgramList.desktop
@@ -3,7 +3,7 @@ Categories=System;
Comment=UEngine App List
Comment[zh]=UEngine 程序菜单
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
+Exec=/usr/bin/uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
Icon=/opt/apps/uengine-runner/icon.png
MimeType=
Name=UEngine App List
diff --git a/build/usr/share/applications/UengineAndroidSetting.desktop b/build/usr/share/applications/UengineAndroidSetting.desktop
index 1ffa7b9..3d9253c 100644
--- a/build/usr/share/applications/UengineAndroidSetting.desktop
+++ b/build/usr/share/applications/UengineAndroidSetting.desktop
@@ -2,7 +2,7 @@
Categories=System;
Comment=UEngine 系统设置
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings
+Exec=/usr/bin/uengine launch --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings
Icon=/opt/apps/uengine-runner/icon.png
MimeType=
Name=UEngine System Control Panel
diff --git a/build/usr/share/applications/spark-uengine-install.desktop b/build/usr/share/applications/spark-uengine-install.desktop
index 6107ff1..a854ea8 100644
--- a/build/usr/share/applications/spark-uengine-install.desktop
+++ b/build/usr/share/applications/spark-uengine-install.desktop
@@ -5,10 +5,10 @@ Categories=System;
Terminal=false
Exec=/usr/bin/uengine-runner -i %F
Icon=/opt/apps/uengine-runner/icon.png
-Name=Install APK(UEngine runner)
-Comment=Install APK(UEngine runner)
-Comment[zh]=安装 APK(UEngine 运行器)
-Name[zh]=安装 APK(UEngine 运行器)
+Name=Install Or Uninstall APK(UEngine runner)
+Comment=Install Or Uninstall APK(UEngine runner)
+Comment[zh]=安装/卸载 APK(UEngine 运行器)
+Name[zh]=安装/卸载 APK(UEngine 运行器)
StartupNotify=true
Hidden=false
NoDisplay=true
diff --git a/build/usr/share/applications/spark-uengine-uninstall.desktop b/build/usr/share/applications/spark-uengine-uninstall.desktop
deleted file mode 100644
index c5e1c4c..0000000
--- a/build/usr/share/applications/spark-uengine-uninstall.desktop
+++ /dev/null
@@ -1,15 +0,0 @@
-[Desktop Entry]
-Type=Application
-Encoding=UTF-8
-Categories=System;
-Terminal=false
-Exec=/usr/bin/uengine-runner -u %F
-Icon=/opt/apps/uengine-runner/icon.png
-Name=Uninstall APK(UEngine runner)
-Comment=Uninstall APK(UEngine runner)
-Comment[zh]=卸载 APK(UEngine 运行器)
-Name[zh]=卸载 APK(UEngine 运行器)
-StartupNotify=true
-Hidden=false
-NoDisplay=true
-MimeType=application/vnd.android.package-archive
\ No newline at end of file
diff --git a/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy b/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
index 7c0ca86..2a140e4 100644
--- a/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
+++ b/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
@@ -8,7 +8,7 @@
Authentication is required to Setting UEngine Internet Bridge
设置 UEngine 桥接需要输入密码
- kbox
+ /usr/share/uengine/ui/uengine_logo.svg
no
no
diff --git a/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy b/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
index 70d8f15..2b57ffe 100644
--- a/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
+++ b/build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
@@ -8,7 +8,7 @@
Authentication is required to Change UEngine
设置 UEngine 需要输入密码
- kbox
+ /usr/share/uengine/ui/uengine_logo.svg
no
no
diff --git a/com.gitee.uengine.runner.spark.deb b/com.gitee.uengine.runner.spark.deb
index 72e4ee2..c031819 100755
Binary files a/com.gitee.uengine.runner.spark.deb and b/com.gitee.uengine.runner.spark.deb differ
diff --git a/information.json b/information.json
index 9bbd05c..e9a5b16 100755
--- a/information.json
+++ b/information.json
@@ -3,7 +3,7 @@
"https://gitee.com/gfdgd-xi/uengine-runner",
"https://github.com/gfdgd-xi/uengine-runner"
],
- "Version": "1.5.0",
+ "Version": "1.5.1",
"System": "Linux(deepin/UOS)",
"Tips": [
"更多可见:https://gitee.com/gfdgd-xi/uengine-runner/wikis",
diff --git a/main.py b/main.py
index eba3de2..221cf8d 100755
--- a/main.py
+++ b/main.py
@@ -3,7 +3,7 @@
###########################################################################################
# 作者:gfdgd xi<3025613752@qq.com>
# 版本:1.4.3
-# 更新时间:2021年9月20日(中秋了)
+# 更新时间:2021年10月03日(国庆了)
# 感谢:anbox、deepin 和 UOS
# 基于 Python3 的 tkinter 构建
# 更新:gfdgd xi<3025613752@qq.com>、actionchen<917981399@qq.com>
@@ -156,13 +156,19 @@ def GetCommandReturn(cmd: "命令")->"运行系统命令并获取返回值":
# cmd 是要获取输出的命令
return subprocess.getoutput(cmd)
+def GetSystemVersion():
+ systemInformation = readtxt("/etc/os-release")
+ for systemInformation in systemInformation.split('\n'):
+ if "PRETTY_NAME=" in systemInformation:
+ return systemInformation.replace("PRETTY_NAME=", "").replace('"', '')
+
# 打开所有窗口事件
def Button5Click():
threading.Thread(target=OpenUengineProgramList).start()
# 打开“uengine 所有程序列表”
def OpenUengineProgramList()->"打开“uengine 所有程序列表”":
- os.system("/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
+ os.system("uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
# 显示“关于这个程序”窗口
#def about_this_program()->"显示“关于这个程序”窗口":
@@ -329,7 +335,7 @@ def BuildUengineDesktop(packageName: "软件包名", activityName: "activity", s
things = '''[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
@@ -550,7 +556,7 @@ def AdbCPUAndRAWShowInTer():
threading.Thread(target=os.system, args=["deepin-terminal -w ~ -e 'adb -s 192.168.250.2:5555 shell top'"]).start()
def UengineSettingShow():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
# 杀死 adb 进程
def AdbKillAdbProgress():
@@ -648,7 +654,11 @@ class ApkInformation():
# 获取图标
SaveApkIcon(path, "/tmp/uengine-runner-android-app-icon.png")
# 读取图标
- ttk.Label(tab1, image=ImageTk.PhotoImage(Image.open("/tmp/uengine-runner-android-app-icon.png").resize((256, 256), Image.ANTIALIAS))).pack()
+ image = Image.open("/tmp/uengine-runner-android-app-icon.png")
+ if image.size[0] + image.size[1] <= 512:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image)).pack()
+ else:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image.resize((256, 256), Image.ANTIALIAS))).pack()
info = '''包名:{}
中文名:{}
Activity:{}
@@ -879,7 +889,7 @@ class AddNewUengineDesktopLink():
# 打开测试
def TestOpen():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --package={} --component={}".format(packageName.get(), activityName.get())]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --package={} --component={}".format(packageName.get(), activityName.get())]).start()
AddNewUengineDesktopLink.SaveHistory()
# 浏览文件
@@ -888,7 +898,7 @@ class AddNewUengineDesktopLink():
if path == "" or path == ():
return
packageName.set(GetApkPackageName(path))
- activityName.set(GetApkActivityName(path))
+ activityName.set(str(GetApkActivityName(path)))
write_txt(get_home() + "/.config/uengine-runner/FindApkName.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
def UseProgram():
@@ -925,15 +935,20 @@ programUrl = information["Url"][0]
version = information["Version"]
goodRunSystem = information["System"]
aaptVersion = GetCommandReturn("aapt version")
+SystemVersion = GetSystemVersion()
about = '''介绍 :一个基于 Python3 的 tkinter 制作的 UEngine 运行器,在新版本Deepin/UOS发布后,可以在应用商店安装部分官方已适配的安卓应用,对爱好者来说,不能自己安装APK软件包始终差点意思,本程序可以为Deepin/UOS上的UEngine安卓运行环境安装自定义APK软件包,并能发送安装的APK包启动菜单到桌面或系统菜单。
版本 :{}
适用平台 :{}
+Tk 版本 :{}
+
程序官网 :{}
-©2021-{}'''.format(version, goodRunSystem, tk.TkVersion, programUrl, time.strftime("%Y"))
+系统版本 :{}
+
+©2021-{}'''.format(version, goodRunSystem, tk.TkVersion, programUrl, SystemVersion, time.strftime("%Y"))
tips = "\n".join(information["Tips"])
updateThingsString = "\n".join(information["Update"])
title = "{} {}".format(langFile[lang]["Main"]["MainWindow"]["Title"], version)
diff --git a/new-deb-build/DEBIAN/control b/new-deb-build/DEBIAN/control
index 9820607..903680b 100644
--- a/new-deb-build/DEBIAN/control
+++ b/new-deb-build/DEBIAN/control
@@ -1,6 +1,6 @@
Package: com.gitee.uengine.runner.spark
Source: com.gitee.uengine.runner.spark
-Version: 1.5.0
+Version: 1.5.1
Architecture: all
Maintainer: gfdgd xi <3025613752@qq.com>, actionchen<917981399@qq.com>
Depends: deepin-elf-verify (>= 0.0.16.7-1), python3, python3-tk, python3-pip, aapt, adb, python3-pil, python3-setuptools, uengine, deepin-terminal, curl
diff --git a/new-deb-build/DEBIAN/postinst b/new-deb-build/DEBIAN/postinst
index 5fe504e..c14b9ee 100755
--- a/new-deb-build/DEBIAN/postinst
+++ b/new-deb-build/DEBIAN/postinst
@@ -5,13 +5,14 @@ python3 -m pip install --upgrade requests
python3 -m pip install --upgrade pyautogui
python3 -m pip install --upgrade keyboard
# 建立软链接
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner /usr/bin/uengine-runner
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder /usr/bin/uengine-apk-builder
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-app-uninstall /usr/bin/uengine-app-uninstall
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-app-install /usr/bin/uengine-app-install
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-clean /usr/bin/uengine-clean
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-about /usr/bin/uengine-runner-about
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-keyboard /usr/bin/uengine-keyboard
-ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-useadb /usr/bin/uengine-useadb
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner /usr/bin/uengine-runner
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder /usr/bin/uengine-apk-builder
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-app-uninstall /usr/bin/uengine-app-uninstall
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-app-install /usr/bin/uengine-app-install
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-clean /usr/bin/uengine-clean
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-about /usr/bin/uengine-runner-about
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-keyboard /usr/bin/uengine-keyboard
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-useadb /usr/bin/uengine-useadb
+ln -s /opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-launch.sh /usr/bin/uengine-runner-launch.sh
# 向服务器返回安装数加1(不显示内容且忽略错误)
curl http://gfdgdxi.qicp.vip/uengine/Install.php -s > /dev/null | true
\ No newline at end of file
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidProgramList.desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidProgramList.desktop
index 7d2fc05..a19b595 100644
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidProgramList.desktop
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidProgramList.desktop
@@ -2,7 +2,7 @@
Categories=System;
Comment=UEngine 程序菜单
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
+Exec=/usr/bin/uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
Icon=/opt/apps/com.gitee.uengine.runner.spark/files/icon.png
MimeType=
Name=UEngine App List
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidSetting.desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidSetting.desktop
index 17c8c12..956e612 100644
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidSetting.desktop
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/UengineAndroidSetting.desktop
@@ -3,7 +3,7 @@ Categories=System;
Comment=UEngine System Control Panel
Comment[zh]=UEngine 系统设置
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings
+Exec=/usr/bin/uengine launch --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings
Icon=/opt/apps/com.gitee.uengine.runner.spark/files/icon.png
MimeType=
Name=UEngine System Control Panel
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-install.desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-install.desktop
index 69a0c51..90f8f1f 100644
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-install.desktop
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-install.desktop
@@ -5,10 +5,10 @@ Categories=System;
Terminal=false
Exec=/usr/bin/uengine-runner -i %F
Icon=/opt/apps/com.gitee.uengine.runner.spark/files/icon.png
-Name=Install APK(uengine runner)
-Comment=Install APK(UEngine runner)
-Comment[zh]=安装 APK(UEngine 运行器)
-Name[zh]=安装 APK(UEngine 运行器)
+Name=Install Or Uninstall APK(uengine runner)
+Comment=Install Or Uninstall APK(UEngine runner)
+Comment[zh]=安装/卸载 APK(UEngine 运行器)
+Name[zh]=安装/卸载 APK(UEngine 运行器)
StartupNotify=true
Hidden=false
NoDisplay=true
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-uninstall.desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-uninstall.desktop
deleted file mode 100644
index 258c81e..0000000
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/entries/applications/spark-uengine-uninstall.desktop
+++ /dev/null
@@ -1,15 +0,0 @@
-[Desktop Entry]
-Type=Application
-Encoding=UTF-8
-Categories=System;
-Terminal=false
-Exec=/usr/bin/uengine-runner -u %F
-Icon=/opt/apps/com.gitee.uengine.runner.spark/files/icon.png
-Name=Uninstall APK(UEngine runner)
-Comment=Uninstall APK(UEngine runner)
-Comment[zh]=卸载 APK(UEngine 运行器)
-Name[zh]=卸载 APK(UEngine 运行器)
-StartupNotify=true
-Hidden=false
-NoDisplay=true
-MimeType=application/vnd.android.package-archive
\ No newline at end of file
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/Language.json b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/Language.json
index 8fa00f2..5e4a2e7 100644
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/Language.json
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/Language.json
@@ -3,7 +3,7 @@
"Main": {
"MainWindow": {
"Title": "UEngine 运行器",
- "LabApkPath": "安装 APK:",
+ "LabApkPath": "安装/卸载 APK:",
"LabUninstallPath": "卸载 Apk:",
"BtnFindApk": "浏览",
"BtnInstall": "安装",
@@ -12,6 +12,7 @@
"BtnUninstall": "卸载",
"Btngeticon": "保存图标",
"BtnSaveApk": "保存Apk",
+ "BtnApkInformation": "Apk 信息",
"Menu": [
{
"Name": "程序",
@@ -125,8 +126,7 @@
"Main": {
"MainWindow": {
"Title": "UEngine Runner",
- "LabApkPath": "Install Apk:",
- "LabUninstallPath": "Uninstall Apk",
+ "LabApkPath": "Install Or Uninstall Apk:",
"BtnFindApk": "Find",
"BtnInstall": "Install",
"BtnShowUengineApp": "Open UEngine App List",
@@ -134,6 +134,7 @@
"BtnUninstall": "Uninstall",
"Btngeticon": "Save Apk Icon",
"BtnSaveApk": "Saving Installed App Apk",
+ "BtnApkInformation": "Apk Information",
"Menu": [
{
"Name": "Program",
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/UengineAndroidProgramList.desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/UengineAndroidProgramList.desktop
index c130e1d..110309e 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/UengineAndroidProgramList.desktop
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/UengineAndroidProgramList.desktop
@@ -2,8 +2,8 @@
Categories=System;
Comment=UEngine 程序菜单
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
-Icon=/opt/apps/com.gitee.uengine.runner.spark/files/icon.png
+Exec=/usr/bin/uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
+Icon=/opt/apps/uengine-runner/icon.png
MimeType=
Name=UEngine 程序菜单
StartupWMClass=UEngine 程序菜单
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
index 9bbd05c..e9a5b16 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/information.json
@@ -3,7 +3,7 @@
"https://gitee.com/gfdgd-xi/uengine-runner",
"https://github.com/gfdgd-xi/uengine-runner"
],
- "Version": "1.5.0",
+ "Version": "1.5.1",
"System": "Linux(deepin/UOS)",
"Tips": [
"更多可见:https://gitee.com/gfdgd-xi/uengine-runner/wikis",
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/setting.json b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/setting.json
index cc22f18..5edfd97 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/setting.json
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/setting.json
@@ -1,6 +1,6 @@
{
"Package": "com.gitee.uengine.runner.spark",
"Update": true,
- "Version": "1.5.0",
+ "Version": "1.5.1",
"Url": "https://gfdgd-xi.github.io/update-program/data/UpdateInformation.json"
}
\ No newline at end of file
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder
index d78a287..fbbf991 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-apk-builder
@@ -148,7 +148,7 @@ done
exit 0'''.format(apkPackageName)
desktopFile = '''[Desktop Entry]
Categories=Other;
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
Icon=/usr/share/uengine/icons/{}.png
Terminal=false
Type=Application
@@ -294,7 +294,7 @@ def BuildUengineDesktop(packageName, activityName, showName, iconPath, savePath)
[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=/usr/bin/uengine launch.sh --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
@@ -313,16 +313,16 @@ def GetApkChineseLabel(apkFilePath):
line = line.replace("'", "")
return line
-def GetApkIconInApk(apkFilePath):
- info = GetApkInformation(apkFilePath)
- for line in info.split('\n'):
- if "application:" in line:
- line = line[line.index("icon='"): -1]
- line = line.replace("icon='", "")
- if "'" in line:
- line = line[0: line.index("'")]
- return line
- return line
+#def GetApkIconInApk(apkFilePath):
+# info = GetApkInformation(apkFilePath)
+# for line in info.split('\n'):
+# if "application:" in line:
+# line = line[line.index("icon='"): -1]
+# line = line.replace("icon='", "")
+# if "'" in line:
+# line = line[0: line.index("'")]
+# return line
+# return line
#合并两个函数到一起
def SaveApkIcon(apkFilePath, iconSavePath)->"获取 apk 文件的图标":
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-install (1).desktop b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-install (1).desktop
new file mode 100755
index 0000000..e386dfa
--- /dev/null
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-install (1).desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Categories=system;Utility;
+Encoding=UTF-8
+Exec=uengine-runner -ci %F
+GenericName=APK Install(UEngine)
+GenericName[zh_CN]=APK 安装(UEngine)
+Icon=/opt/apps/uengine-runner/icon.png
+MimeType=application/apk;
+Name=APK Install(UEngine)
+Name[zh_CN]=APK 安装(UEngine)
+NoDisplay=true
+OnlyShowIn=Unity;
+StartupNotify=false
+StartupWMClass=APK 安装(UEngine)
+Terminal=false
+Type=Application
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
index 5a05069..50ff1c7 100755
--- a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner
@@ -22,6 +22,8 @@ import threading
import ttkthemes
import webbrowser
import subprocess
+import PIL.Image as Image
+import PIL.ImageTk as ImageTk
import tkinter as tk
import tkinter.ttk as ttk
import tkinter.messagebox as messagebox
@@ -39,37 +41,38 @@ def UninstallProgram(package: "apk 包名")->"卸载程序":
os.remove("{}/.local/share/applications/{}.desktop".format(get_home(), package))
if os.path.exists("{}/{}.desktop".format(get_desktop_path(), package)):
os.remove("{}/{}.desktop".format(get_desktop_path(), package))
- fineUninstallApkHistory.append(ComboUninstallPath.get())
- ComboUninstallPath['value'] = fineUninstallApkHistory
- write_txt(get_home() + "/.config/uengine-runner/FindUninstallApkHistory.json", str(json.dumps(ListToDictionary(fineUninstallApkHistory)))) # 将历史记录的数组转换为字典并写入
+ findApkHistory.append(ComboInstallPath.get())
+ ComboInstallPath['value'] = findApkHistory
+ write_txt(get_home() + "/.config/uengine-runner/FindApkHistory.json", str(json.dumps(ListToDictionary(findApkHistory)))) # 将历史记录的数组转换为字典并写入
+ messagebox.showinfo(message="操作执行完毕!", title="提示")
+ DisabledAndEnbled(False)
return Return
except:
traceback.print_exc()
messagebox.showerror(title="错误", message=traceback.format_exc())
+ DisabledAndEnbled(False)
# 卸载文本框的浏览按钮事件
-def BtnFindUninstallApkClk():
- path = filedialog.askopenfilename(title="选择 Apk", filetypes=[("APK 文件", "*.apk"), ("所有文件", "*.*")], initialdir=json.loads(readtxt(get_home() + "/.config/uengine-runner/FindUninstallApk.json"))["path"])
- if path != "" and path != "()":
- try:
- ComboUninstallPath.set(path)
- write_txt(get_home() + "/.config/uengine-runner/FindUninstallApk.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
- except:
- pass
+#def BtnFindUninstallApkClk():
+# path = filedialog.askopenfilename(title="选择 Apk", filetypes=[("APK 文件", "*.apk"), ("所有文件", "*.*")], initialdir=json.loads(readtxt(get_home() + "/.config/uengine-runner/FindUninstallApk.json"))["path"])
+# if path != "" and path != "()":
+# try:
+# ComboUninstallPath.set(path)
+# write_txt(get_home() + "/.config/uengine-runner/FindUninstallApk.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
+# except:
+# pass
# 卸载按钮事件
def ButtonClick8():
- if ComboUninstallPath.get() is "":
+ if ComboInstallPath.get() is "":
messagebox.showerror(title="提示", message="信息没有填写完整,无法继续卸载 APK")
return
DisabledAndEnbled(True)
- if os.path.exists(ComboUninstallPath.get()):
- path = GetApkPackageName(ComboUninstallPath.get())
+ if os.path.exists(ComboInstallPath.get()):
+ path = GetApkPackageName(ComboInstallPath.get())
else:
- path = ComboUninstallPath.get()
- UninstallProgram(path)
- messagebox.showinfo(message="操作执行完毕!", title="提示")
- DisabledAndEnbled(False)
+ path = ComboInstallPath.get()
+ threading.Thread(target=UninstallProgram, args=[path]).start()
# 浏览窗口
# temp strs
@@ -136,14 +139,16 @@ def DisabledAndEnbled(choose: "启动或者禁用")->"禁用或启动所有控
userChoose = {True: tk.DISABLED, False: tk.NORMAL}
a = userChoose[choose]
ComboInstallPath.configure(state=a)
- ComboUninstallPath.configure(state=a)
+ #ComboUninstallPath.configure(state=a)
BtnFindApk.configure(state=a)
BtnInstall.configure(state=a)
BtnShowUengineApp.configure(state=a)
- BtnUninstallApkBrowser.configure(state=a)
+ #BtnUninstallApkBrowser.configure(state=a)
BtnUninstall.configure(state=a)
Btngeticon.configure(state=a)
BtnSaveApk.configure(state=a)
+ BtnApkInformation.configure(state=a)
+ LabApkPath.configure(state=a)
# 需引入 subprocess
# 运行系统命令并获取返回值
@@ -157,27 +162,27 @@ def Button5Click():
# 打开“uengine 所有程序列表”
def OpenUengineProgramList()->"打开“uengine 所有程序列表”":
- os.system("/usr/bin/uengine-launch.sh --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
+ os.system("uengine launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity")
# 显示“关于这个程序”窗口
-def about_this_program()->"显示“关于这个程序”窗口":
- global about
- global title
- global iconPath
- mess = tk.Toplevel()
- message = ttk.Frame(mess)
- mess.resizable(0, 0)
- mess.title("关于 {}".format(title))
- #mess.iconphoto(False, tk.PhotoImage(file=iconPath))
- img = ImageTk.PhotoImage(Image.open(iconPath))
- LabApkPath = ttk.Label(message, image=img)
- label2 = ttk.Label(message, text=about)
- button1 = ttk.Button(message, text="确定", command=mess.withdraw)
- LabApkPath.pack()
- label2.pack()
- button1.pack(side="bottom")
- message.pack()
- mess.mainloop()
+#def about_this_program()->"显示“关于这个程序”窗口":
+# global about
+# global title
+# global iconPath
+# mess = tk.Toplevel()
+# message = ttk.Frame(mess)
+# mess.resizable(0, 0)
+# mess.title("关于 {}".format(title))
+# #mess.iconphoto(False, tk.PhotoImage(file=iconPath))
+# img = ImageTk.PhotoImage(Image.open(iconPath))
+# LabApkPath = ttk.Label(message, image=img)
+# label2 = ttk.Label(message, text=about)
+# button1 = ttk.Button(message, text="确定", command=mess.withdraw)
+# LabApkPath.pack()
+# label2.pack()
+# button1.pack(side="bottom")
+# message.pack()
+# mess.mainloop()
# 显示“提示”窗口
def helps()->"显示“提示”窗口":
@@ -324,7 +329,7 @@ def BuildUengineDesktop(packageName: "软件包名", activityName: "activity", s
things = '''[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
@@ -545,7 +550,7 @@ def AdbCPUAndRAWShowInTer():
threading.Thread(target=os.system, args=["deepin-terminal -w ~ -e 'adb -s 192.168.250.2:5555 shell top'"]).start()
def UengineSettingShow():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --action=android.intent.action.MAIN --package=com.android.settings --component=com.android.settings.Settings"]).start()
# 杀死 adb 进程
def AdbKillAdbProgress():
@@ -594,6 +599,67 @@ def AdbAndroidInstallAppList():
subprocess.getoutput("adb -s 192.168.250.2:5555 shell pm list package -3"),
subprocess.getoutput("adb -s 192.168.250.2:5555 shell pm list packages -f")))
+def GetApkVersion(apkFilePath):
+ info = GetApkInformation(apkFilePath)
+ for line in info.split('\n'):
+ if "package:" in line:
+ if "compileSdkVersion='" in line:
+ line = line.replace(line[line.index("compileSdkVersion='"): -1], "")
+ if "platform" in line:
+ line = line.replace(line[line.index("platform"): -1], "")
+ line = line.replace(line[0: line.index("versionName='")], "")
+ line = line.replace("versionName='", "")
+ line = line.replace("'", "")
+ line = line.replace(" ", "")
+ return line
+
+class ApkInformation():
+ def ShowWindows():
+ global fullInformation
+ global path
+ global tab1
+ path = ComboInstallPath.get()
+
+ message = tk.Toplevel()
+
+ tab = ttk.Notebook(message)
+
+ tab1 = ttk.Frame(message)
+ tab2 = ttk.Frame(message)
+
+ fullInformation = tk.Text(tab2)
+
+ tab.add(tab1, text="简化版")
+ tab.add(tab2, text="完整版")
+
+ fullInformation.pack(expand="yes", fill="both")
+
+ tab.pack(expand="yes", fill="both")
+
+ threading.Thread(target=ApkInformation.GetInformation).start()
+
+ message.mainloop()
+
+ def GetInformation():
+ # 获取详细信息
+ fullInformation.configure(state=tk.NORMAL)
+ fullInformation.insert("1.0", GetApkInformation(path))
+ fullInformation.configure(state=tk.DISABLED)
+ # 获取图标
+ SaveApkIcon(path, "/tmp/uengine-runner-android-app-icon.png")
+ # 读取图标
+ image = Image.open("/tmp/uengine-runner-android-app-icon.png")
+ if image.size[0] + image.size[1] <= 512:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image)).pack()
+ else:
+ ttk.Label(tab1, image=ImageTk.PhotoImage(image.resize((256, 256), Image.ANTIALIAS))).pack()
+ info = '''包名:{}
+中文名:{}
+Activity:{}
+版本:{}'''.format(GetApkPackageName(path), GetApkChineseLabel(path), GetApkActivityName(path), GetApkVersion(path))
+ ttk.Label(tab1, text=info).pack()
+
+
class AdbChangeUengineDisplaySize():
def ShowWindows():
global displayX
@@ -817,7 +883,7 @@ class AddNewUengineDesktopLink():
# 打开测试
def TestOpen():
- threading.Thread(target=os.system, args=["/usr/bin/uengine-launch.sh --package={} --component={}".format(packageName.get(), activityName.get())]).start()
+ threading.Thread(target=os.system, args=["/usr/bin/uengine launch --package={} --component={}".format(packageName.get(), activityName.get())]).start()
AddNewUengineDesktopLink.SaveHistory()
# 浏览文件
@@ -826,7 +892,7 @@ class AddNewUengineDesktopLink():
if path == "" or path == ():
return
packageName.set(GetApkPackageName(path))
- activityName.set(GetApkActivityName(path))
+ activityName.set(str(GetApkActivityName(path)))
write_txt(get_home() + "/.config/uengine-runner/FindApkName.json", json.dumps({"path": os.path.dirname(path)})) # 写入配置文件
def UseProgram():
@@ -1036,18 +1102,19 @@ win.geometry(""+"+{:.0f}+{:.0f}".format(x, y))
# 创建控件
FrmInstall = ttk.Frame(window)
-FrmUninstall = ttk.Frame(window)
+#FrmUninstall = ttk.Frame(window)
LabApkPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabApkPath"])
-LabUninstallPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabUninstallPath"])
+#LabUninstallPath = ttk.Label(window, text=langFile[lang]["Main"]["MainWindow"]["LabUninstallPath"])
ComboInstallPath = ttk.Combobox(window, width=50)
-ComboUninstallPath = ttk.Combobox(window, width=50)
+#ComboUninstallPath = ttk.Combobox(window, width=50)
BtnFindApk = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnFindApk"], command=FindApk)
BtnInstall = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnInstall"], command=Button3Install)
BtnShowUengineApp = ttk.Button(window, text=langFile[lang]["Main"]["MainWindow"]["BtnShowUengineApp"], command=Button5Click)
-BtnUninstallApkBrowser = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstallApkBrowser"], command=BtnFindUninstallApkClk)
-BtnUninstall = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstall"], command=ButtonClick8)
+#BtnUninstallApkBrowser = ttk.Button(FrmUninstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstallApkBrowser"], command=BtnFindUninstallApkClk)
+BtnUninstall = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnUninstall"], command=ButtonClick8)
Btngeticon = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["Btngeticon"], command=SaveIconToOtherPath)
BtnSaveApk = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnSaveApk"], command=SaveInstallUengineApp)
+BtnApkInformation = ttk.Button(FrmInstall, text=langFile[lang]["Main"]["MainWindow"]["BtnApkInformation"], command=ApkInformation.ShowWindows)
# 设置菜单栏
menu = tk.Menu(window, background="white")
@@ -1103,8 +1170,8 @@ help.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][0
help.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][3]["Menu"][1], command=showhelp) # 设置“关于这个程序”项
uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=StartUengine)
-uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=StopUengine)
-uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][0], command=UengineRestart)
+uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][1], command=StopUengine)
+uengineService.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][2]["Menu"][2], command=UengineRestart)
uengineInternet.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][3]["Menu"][0], command=UengineBridgeStart)
uengineInternet.add_command(label=langFile[lang]["Main"]["MainWindow"]["Menu"][2]["Menu"][3]["Menu"][1], command=UengineBridgeStop)
@@ -1141,14 +1208,15 @@ uengineUseAdb.configure(activebackground="dodgerblue")
uengineData.configure(activebackground="dodgerblue")
# 设置控件
-ComboUninstallPath['value'] = fineUninstallApkHistory
+#ComboUninstallPath['value'] = fineUninstallApkHistory
ComboInstallPath['value'] = findApkHistory
try:
if sys.argv[1] == "-i":
ComboInstallPath.set(sys.argv[2])
print("Install Path: " + sys.argv[2])
elif sys.argv[1] == "-u":
- ComboUninstallPath.set(sys.argv[2])
+ #ComboUninstallPath.set(sys.argv[2])
+ ComboInstallPath.set(sys.argv[2])
print("Unstall Path: " + sys.argv[2])
else:
print("Command Format Error")
@@ -1159,25 +1227,26 @@ win.config(menu=menu) # 显示菜单栏
-LabApkPath.grid(row=1, column=0,sticky= tk.W,padx=3)
-ComboInstallPath.grid(row=2, column=0,padx=3)
+LabApkPath.grid(row=0, column=0,sticky= tk.W,padx=3)
+ComboInstallPath.grid(row=1, column=0,padx=3)
-FrmInstall.grid(row=2, column=1,padx=3, rowspan=2)
+FrmInstall.grid(row=0, column=1,padx=3, rowspan=3)
BtnFindApk.grid(row=0, column=0)
BtnInstall.grid(row=0, column=1)
-LabUninstallPath.grid(row=4, column=0,sticky= tk.W,padx=3)
-ComboUninstallPath.grid(row=5, column=0,padx=3)
+#LabUninstallPath.grid(row=4, column=0,sticky= tk.W,padx=3)
+#ComboUninstallPath.grid(row=5, column=0,padx=3)
-FrmUninstall.grid(row=5, column=1,padx=3)
-BtnUninstallApkBrowser.grid(row=0, column=0)
-BtnUninstall.grid(row=0, column=1)
+#FrmUninstall.grid(row=5, column=1,padx=3)
+#BtnUninstallApkBrowser.grid(row=0, column=0)
+BtnUninstall.grid(row=1, column=0)
-BtnShowUengineApp.grid(row=6, column=0,sticky= tk.W,padx=3,pady=2)
+BtnShowUengineApp.grid(row=2, column=0,sticky= tk.W,padx=3,pady=2)
-Btngeticon.grid(row=1, column=0,sticky= tk.W,padx=3,pady=2)
-BtnSaveApk.grid(row=1, column=1,sticky= tk.W,padx=3,pady=2)
+BtnApkInformation.grid(row=2, column=1,sticky= tk.W,padx=3,pady=2)
+Btngeticon.grid(row=1, column=1,sticky= tk.W,padx=3,pady=2)
+BtnSaveApk.grid(row=2, column=0,sticky= tk.W,padx=3,pady=2)
window.pack()
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-launch.sh b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-launch.sh
new file mode 100755
index 0000000..3e09ebd
--- /dev/null
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine-runner-launch.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+# 忽略社区版检测
+
+pkgRunCnt=`ps -ef |grep "uengine launch" |grep -v grep |grep "$pkg" |wc -l`
+if [ $pkgRunCnt -ge 1 ]; then
+ #防止短时间内多次打开同一应用,如果应用正在启动中,此次忽略
+ exit 0
+fi
+
+#等Session服务启动完全
+wscont=0
+isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+if [ "$isReady" != "b true" ] ;then
+ sleep 2
+fi
+while [ "$isReady" = "b false" -a $wscont -lt 10 ]
+do
+ sleep 1
+ isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+ let wscont++
+done
+
+uengine launch $*
diff --git a/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine_logo.svg b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine_logo.svg
new file mode 100644
index 0000000..c77d1fe
--- /dev/null
+++ b/new-deb-build/opt/apps/com.gitee.uengine.runner.spark/files/uengine_logo.svg
@@ -0,0 +1,153 @@
+
+
\ No newline at end of file
diff --git a/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy b/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
index 7c0ca86..2a140e4 100644
--- a/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
+++ b/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-bridge.policy
@@ -8,7 +8,7 @@
Authentication is required to Setting UEngine Internet Bridge
设置 UEngine 桥接需要输入密码
- kbox
+ /usr/share/uengine/ui/uengine_logo.svg
no
no
diff --git a/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy b/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
index 70d8f15..2b57ffe 100644
--- a/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
+++ b/new-deb-build/usr/share/polkit-1/actions/com.deepin.pkexec.uengine-session-launch-helper.policy
@@ -8,7 +8,7 @@
Authentication is required to Change UEngine
设置 UEngine 需要输入密码
- kbox
+ /usr/share/uengine/ui/uengine_logo.svg
no
no
diff --git a/setting-new.json b/setting-new.json
index cc22f18..5edfd97 100755
--- a/setting-new.json
+++ b/setting-new.json
@@ -1,6 +1,6 @@
{
"Package": "com.gitee.uengine.runner.spark",
"Update": true,
- "Version": "1.5.0",
+ "Version": "1.5.1",
"Url": "https://gfdgd-xi.github.io/update-program/data/UpdateInformation.json"
}
\ No newline at end of file
diff --git a/setting.json b/setting.json
index be23244..d4f0364 100755
--- a/setting.json
+++ b/setting.json
@@ -1,7 +1,7 @@
{
"Package": "spark-uengine-runner",
"Update": true,
- "Version": "1.5.0",
+ "Version": "1.5.1",
"Url": "https://gfdgd-xi.github.io/update-program/data/UpdateInformation.json"
}
\ No newline at end of file
diff --git a/spark-uengine-runner.deb b/spark-uengine-runner.deb
index 1566d23..bc1a239 100755
Binary files a/spark-uengine-runner.deb and b/spark-uengine-runner.deb differ
diff --git a/uengine-apk-builder b/uengine-apk-builder
index 28f5453..fbbf991 100755
--- a/uengine-apk-builder
+++ b/uengine-apk-builder
@@ -148,7 +148,7 @@ done
exit 0'''.format(apkPackageName)
desktopFile = '''[Desktop Entry]
Categories=Other;
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=uengine launch --action=android.intent.action.MAIN --package={} --component={}
Icon=/usr/share/uengine/icons/{}.png
Terminal=false
Type=Application
@@ -294,7 +294,7 @@ def BuildUengineDesktop(packageName, activityName, showName, iconPath, savePath)
[Desktop Entry]
Categories=app;
Encoding=UTF-8
-Exec=/usr/bin/uengine-launch.sh --action=android.intent.action.MAIN --package={} --component={}
+Exec=/usr/bin/uengine launch.sh --action=android.intent.action.MAIN --package={} --component={}
GenericName={}
Icon={}
MimeType=
diff --git a/uengine-runner-launch.sh b/uengine-runner-launch.sh
new file mode 100755
index 0000000..3e09ebd
--- /dev/null
+++ b/uengine-runner-launch.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+# 忽略社区版检测
+
+pkgRunCnt=`ps -ef |grep "uengine launch" |grep -v grep |grep "$pkg" |wc -l`
+if [ $pkgRunCnt -ge 1 ]; then
+ #防止短时间内多次打开同一应用,如果应用正在启动中,此次忽略
+ exit 0
+fi
+
+#等Session服务启动完全
+wscont=0
+isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+if [ "$isReady" != "b true" ] ;then
+ sleep 2
+fi
+while [ "$isReady" = "b false" -a $wscont -lt 10 ]
+do
+ sleep 1
+ isReady=`busctl --user get-property org.anbox /org/anbox org.anbox.ApplicationManager Ready`
+ let wscont++
+done
+
+uengine launch $*
diff --git a/uengine_logo.svg b/uengine_logo.svg
new file mode 100644
index 0000000..c77d1fe
--- /dev/null
+++ b/uengine_logo.svg
@@ -0,0 +1,153 @@
+
+
\ No newline at end of file