星火SWRT:快速制作webapp 更新1.6:个性化更新
Tofloor
poster avatar
神末shenmo
deepin
Spark-App
2020-11-18 17:07
Author

花心胡萝卜大佬制作的运行环境

                                                        

                                                  



1.6更新日志

支持页面加载完成前显示加载动画;
支持从网页下载文件,默认保存路径为 ~/Downloads 文件夹;
支持下载文件另存为以及进度显示,下载完成后支持文管内显示文件位置(依赖 dde-file-manager );
使用 DFloatingMessageDMessageManager 显示提示信息以及下载进度;
支持全屏显示功能(命令行参数 --full-screen ),与 固定窗口大小 冲突,优先固定大小;
支持托盘功能(命令行参数 -T 或者 --tray ),启用后需在托盘右键退出程序;
在命令行参数中启用 固定大小隐藏按钮 功能后, GUI 界面将隐藏对应按钮。

  • 在启用托盘图标时,如果手动勾选了 固定大小 按钮,同时关闭了窗口,那么再次从托盘区打开主界面时会出现 最大化按钮丢失 的问题,且无法恢复。建议这个按钮仅在调试时使用,正式打包应用时如果有需要,请尽量使用命令行参数调用,会在GUI界面隐藏该功能按钮。


1.5更新日志

修正之前版本中, 关于 窗口在主窗口关闭后仍然显示的问题;
修正之前版本中, ~/.local/share 中文件夹名称被翻译为中文的问题;
修正之前版本中,图标名称错误的问题;
新增 固定窗口大小 以及 隐藏控制按钮 的选项,支持 命令行调用 以及 GUI 界面菜单项修改。

  • 命令行使用参数 --fix-size--hide-buttons 后, GUI 界面将禁用相关修改项,避免 最大化 按钮出现 BUG


用法:./spark-webapp-runtime [选项]
描述: 星火网页应用运行环境

选项:
-h, --help 显示这个此帮助。
-v, --version 显示版本信息。
-p, --parser 启用参数解析方式。默认为顺序解析方式。
-t, --title 设置应用的标题。默认为<br>星火网页应用运行环境。<br>-u, --url <url> 设置要打开的目标 URL。默认为空。<br>-w, --width <width> 设置应用的窗口宽度。默认为 1024。<br>-H, --height <height> 设置应用的窗口高度。默认为 768。<br>-T, --tray 启用托盘图标。默认不启用。<br>--full-screen 以全屏模式运行。默认关闭该功能。<br>--fix-size 固定窗口大小。默认关闭该功能。<br>--hide-buttons 隐藏控制按钮。默认关闭该功能。<br>-i, --ico <ico> 设置应用的图标。<br>-d, --desc <desc> 设置应用的描述信息。<br>-c, --cfg <cfg> 设置应用的配置文件。<br>-r, --root <root> 设置内置 WebServer 的根路径。<br>-P, --port <port> 设置内置 WebServer 的监听端口号。<br><br><br>需要注意的是, 命令行会覆盖配置文件信息。</code></pre><pre><code>Use "spark-webapp-runtime -h" to get help<br><br><br>Usage: ./spark-webapp-runtime [options]<br>Descrīption: spark-webapp-runtime<br><br>Options:<br>-h, --help Show this help Message.<br>-v, --version Show Version info.<br>-p, --parser Enable CommandLineParser. Default is false.<br>-t, --title <title> The Title of Application. Default is<br>SparkWebAppRuntime.<br>-u, --url <url> The target URL. Default is Blank.<br>-w, --width <width> The Width of Application. Default is 1024.<br>-H, --height <height> The Height of Application. Default is 768.<br>-T, --tray Enable Tray Icon. Default is false.<br>--full-screen Run in Fullscreen Mode. Default is false.<br>--fix-size Fix Window Size. Default is false.<br>--hide-buttons Hide Control Buttons. Default is false.<br>-i, --ico <ico> The ICON of Application.<br>-d, --desc <desc> The Descrīption of Application.<br>-c, --cfg <cfg> The Configuration file of Application.<br>-r, --root <root> The root path of the program web service.<br>-P, --port <port> The port number of the program web service.</code></pre><p><br><br></p><p><br><br></p><p><br><br><br></p><pre><code></code></pre><p><br><br></p><p>这里给大家附送两个例子,帮助大家理解使用</p><p>这是一款使用了-r选项(自带webserver)的一款应用的desktop文件</p><pre><code>[Desktop Entry]<br>Categories=Game;<br>Encoding=UTF-8<br>Exec=spark-webapp-runtime -p -u http://localhost:38324 -t "Unfair Undyne" -d "不公平的安黛因,传说之下(Undertale)鱼姐战" -w 720 -H 620 -i /opt/durapps/fairdyne/icon.png -r /opt/durapps/fairdyne/pages -P 38324<br>Icon=/opt/durapps/fairdyne/icon.png<br>MimeType=<br>Name[zh_CN]=Fairdyne<br>Name=Fairdyne<br>StartupWMClass=Fairdyne<br>Terminal=False<br>Type=Application<br>X-Deepin-CreatedBy=com.deepin.dde.daemon.Launcher<br>X-Deepin-AppID=fairdyne</code></pre><p>附这款应用的下载链接</p><p><a href="https://dcstore.spark-app.store/store/games/fairdyne/fairdyne_1.4_plus_sm1_amd64.deb" target="_blank">https://dcstore.spark-app.store/store/games/fairdyne/fairdyne_1.4_plus_sm1_amd64.deb</a></p><p>欢迎大家积极制作</p><p><br></p><p>以下是新手教程<br></p><p><span style="color: rgb(194, 79, 74);"><span style="font-weight: bold;"><font size="5">使用教程</font></span></span><br></p><h1>0.<span style="color: rgb(77, 128, 191);">配置环境</span></h1><div>作为星火系列应用,我们的设计哲学是<font size="5">M.I.S.(Make it Simple)<font size="1">没错我就是从KISS抄的</font></font></div><div>配置spark-webapp-runtime环境是非常简单的</div><div>只需要</div><div>点击</div><div>           <br></div><div>                            <a href="spk://store/development/spark-webapp-runtime-waker">     <img src="https://gitee.com/superendermansm/shenmo-map-bed/raw/master/spk.jpg" alt="" width="409" height="289"> <br></a></div><div><p>即可配置完成</p><p>现在我们来测试一下</p><pre><code>spark-webapp-runtime</code></pre><p><br>如果你能看到<br></p><p><img src="https://examine-spark.oss-cn-shanghai.aliyuncs.com/images/2020/11/14/612135b0-268e-11eb-881e-fff03f7ff5ca.png" style="max-width:100%;"></p><p>那么恭喜你,配置完成了</p><h1>1.简易操作</h1><div>作为第一种调用方式,简易调用是非常简单粗暴的</div><div>你可以试试输入这一段</div><div><br></div><div><pre><code>spark-webapp-runtime 垃圾百度 https://www.baidu.com</code></pre><p>看到了么?就是这么简单</p><p><img src="/api/v1/thread/down_image?file_path=202011190957234196_thread_OSva1QtI80i.png" style="max-width:100%;"></p><p>如果觉得默认的1024x768分辨率不合你心意</p><p>你可以简单的在后面加上你喜欢的分辨率</p><p>比如这样</p><pre><code>spark-webapp-runtime 垃圾百度 https://www.baidu.com 768 1024</code></pre><p><img src="/api/v1/thread/down_image?file_path=202011190958558825_thread_SGQvVsatdOi.png" style="max-width:100%;"></p><p><br></p><code></code><p>And你甚至可以使用本地的网页文件</p><p>先找到文件</p><p>    <img src="https://s3.ax1x.com/2020/11/19/DugXGQ.png" style="max-width:100%;"></p><p>在浏览器里打开</p><p><img src="https://s3.ax1x.com/2020/11/19/Du2pq0.png" style="max-width:100%;"></p><p>复制粘贴</p><br><pre><code>spark-webapp-runtime 这是一个本地网页 file:///home/sy120zx/Desktop/Index%20of%20_store_games_fairdyne_.html 1024 768</code></pre><p><img src="https://s3.ax1x.com/2020/11/19/Du2QIO.png" style="max-width:100%;"></p><p><br></p><p>你还可以整一些生草的活</p><pre><code>spark-webapp-runtime 垃圾百度 https://www.baidu.com 768 84 </code></pre><p><img src="/api/v1/thread/down_image?file_path=202011191000162762_thread_sbTYl51TF9Q.png" style="max-width:100%;"></p><p><br></p><p><br></p><p>所以大家学会了么?spark-webapp-runtime的简单调用方式:</p><pre><code>spark-webapp-runtime [标题] [地址] </code></pre><pre><code>spark-webapp-runtime [标题] [地址] [宽] [高]</code></pre><p><br></p><p>简易调用优点:简单,符合直觉,无需学习就可以使用,语法兼容spark-web-core(已弃用)</p><p>缺点:自定义程度低,不支持本地服务器功能</p><h1>2.标准调用</h1><div>相信看到这里的都是准备打包的大佬了</div><div>所以例子就不那么罗索了</div><div><pre><code>spark-webapp-runtime -p -u http://网址 -t 标题 -H 高度 -w 宽度-T(启用托盘) --full-screen(全屏)--fix-size(固定大小) --hide-buttons(隐藏控制按钮) -i 图标路径 -d 描述信息 -c 配置文件路径(如果没有使用配置文件而是命令行调用,不需要这个)-r 网页服务器路径 -P 启动的端口</code></pre><p><br>比如 <br></p><pre><code>spark-webapp-runtime -p -u https://gitee.com/deepin-community-store/ -t 星火官网 -w 1024 -H 768 -T --full-screen --hide-buttons -i /usr/share/icons/bloom/apps/64/deepin-calculator.svg -d 星火官网</code></pre><p><br></p><p><br></p><p><img src="/api/v1/thread/down_image?file_path=202012011310018696_thread_httKaNnjp7v.png" style="max-width:100%;"></p><p><br></p><p><br></p><p><br></p><p><br><br></p></div></div><span style="color: rgb(24, 144, 255);"></span></div></div></div>
Reply Favorite View the author
All Replies
1 / 2
To page
element
deepin
2020-11-18 18:08
#1

哥这个是太复杂 还是我没有仔细看。。。

能不能说的让小白都很通俗易懂一点呢。

你这个是教这么做还是运行环境搭建?

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-18 19:05
#2
element

哥这个是太复杂 还是我没有仔细看。。。

能不能说的让小白都很通俗易懂一点呢。

你这个是教这么做还是运行环境搭建?

装好包之后可以终端调用


Reply View the author
神末shenmo
deepin
Spark-App
2020-11-19 03:45
#3
element

哥这个是太复杂 还是我没有仔细看。。。

能不能说的让小白都很通俗易懂一点呢。

你这个是教这么做还是运行环境搭建?

这个问了下,还是过于简单了

我慢慢补充下吧

Reply View the author
neko
deepin
Ecological co-builder
2020-11-19 06:08
#4

 打包了一个阿里网盘的,发现不能输入中文也无法下载。




Reply View the author
sgb76
deepin
2020-11-19 06:11
#5
neko

 打包了一个阿里网盘的,发现不能输入中文也无法下载。




会不会是输入法的问题?换个输入法试试

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-19 07:10
#6
neko

 打包了一个阿里网盘的,发现不能输入中文也无法下载。





目前runtime功能可以保证以展示和操作内容,但是下载等操作还没有写

Hades也没那么多空余时间

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-19 07:14
#7
neko

 打包了一个阿里网盘的,发现不能输入中文也无法下载。





关于分辨率调整,开发者联盟的@zty199 已经进行了修改

如果顺利,今天会推送1.4版本更新,就可以调整窗口大小了

Reply View the author
大泽IO
deepin
2020-11-19 18:59
#8

刚刚在deepin论坛首页看到这玩应了

实话实说,我不希望星火和deepin走这么近的。。。。

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-20 06:44
#9
neko

 打包了一个阿里网盘的,发现不能输入中文也无法下载。




https://bbs.deepin.org/phone/post/206299

不知道老兄对有道笔记有没有兴趣

明天推送的更新,运行时将会支持最大化和大小调整

Reply View the author
deepin
2020-11-21 01:16
#10

这...不是已经有Electron了吗?而且打开网页的话,我为什么不直接拿浏览器整[困惑]

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-21 03:45
#11

这...不是已经有Electron了吗?而且打开网页的话,我为什么不直接拿浏览器整[困惑]

1.支持本地服务器,页面也可以从本地拉起,就是本地webapp,可以认为是缩水最小化版本的electron

2.这很Dtk

Reply View the author
神末shenmo
deepin
Spark-App
2020-11-28 18:45
#12
neko

 打包了一个阿里网盘的,发现不能输入中文也无法下载。




Reply View the author
gfdgd_xi
deepin
Ecological co-builder
2020-11-29 19:33
#13

有个小问题,就是只输入域名不输入https://,程序就无法正常显示网页内容(这不是一个大的问题)


Reply View the author
神末shenmo
deepin
Spark-App
2020-11-29 20:03
#14
gfdgd_xi

有个小问题,就是只输入域名不输入https://,程序就无法正常显示网页内容(这不是一个大的问题)


啊这

要不就不修复了吧[尴尬]

Reply View the author
Comments
gfdgd xi
2020-11-29 23:40
多打一个http://也不会累,如果在下一个版本改一下就好了,如果需要动较多的代码就算了,在--help里的-u参数的帮助写清楚前应该就OK了,使用命令行的软件一般都会看帮助的
忘记、过去
deepin
2020-12-01 08:16
#15
gfdgd_xi

有个小问题,就是只输入域名不输入https://,程序就无法正常显示网页内容(这不是一个大的问题)


盲生你发现了华点......突然想到,不仅仅是 http:// 这些协议的问题,如果有好奇心旺盛的小童鞋搞点什么奇怪的网址,比如有中文啊、有 % 啊、有 base64 啊之类的......估计都是无法正常识别的,就很头疼[尖叫]


坐等大佬来处理 QString 转 QUrl 并重新解码,这玩意儿估计得好好查文档了......

Reply View the author
神末shenmo
deepin
Spark-App
2020-12-01 17:56
#16
忘记、过去

盲生你发现了华点......突然想到,不仅仅是 http:// 这些协议的问题,如果有好奇心旺盛的小童鞋搞点什么奇怪的网址,比如有中文啊、有 % 啊、有 base64 啊之类的......估计都是无法正常识别的,就很头疼[尖叫]


坐等大佬来处理 QString 转 QUrl 并重新解码,这玩意儿估计得好好查文档了......

这个用cfg也是不可以的么。。。[流汗]

Reply View the author
忘记、过去
deepin
2020-12-01 18:07
#17
神末shenmo

这个用cfg也是不可以的么。。。[流汗]

不知道,还没测试过配置文件……但感觉转码可能有问题,晚点可以试试

Reply View the author
神末shenmo
deepin
Spark-App
2020-12-01 21:10
#18

顶一下

Reply View the author
chdkd
deepin
2020-12-01 23:34
#19

?? sudo python3 -m http.server 8080

Reply View the author
神末shenmo
deepin
Spark-App
2020-12-02 08:59
#20
chdkd

?? sudo python3 -m http.server 8080


这个在fairdyne 1.2之前我用过

你可以看看

https://shenmo.lanzoux.com/iB2Vhhwpr2d

然后你对比一下内置webserver和外挂哪个好

Reply View the author
1 / 2
To page