AI2(App Inventor 2)离线版服务器

我们的目标:搭建一个本地多用户的App Inventor 2 服务器   演示: http://ai2.fsyz.net  [旧 win]     http://ai2n.fsyz.net [新 Centos]

目的:课堂教学,社团活动,兴趣学习

优势:管理权限(用户管理,账号切换,资源打包),网络链接速度快,拥有配套服务。

注意:每次退出前导出自己的项目到本地做备份。

2018.12.10 压缩包中附带桌面伴侣。来自 https://mp.weixin.qq.com/s/qb5RPrSuEd-OtAoPKpGDnQ 谢谢金老师的分享。相关设置:https://gte.fsyz.net/node/1926

2019.4.25 增加本地编译AIA到APK.bat https://gte.fsyz.net/node/1932

App Inventor 2版本:  https://github.com/mit-cml/appinventor-sources (nls-1334-g9701ad76 Use Companion: 2.51 )

https://github.com/mit-cml/appinventor-sources/commits/master

Commits on Apr 26, 2019
Use DomHelper to show Do It error dialog (#1664)  …
Commits on Apr 25, 2019
Fix performance issue in project list (#1663)  …
......

相关软件版本:

    jdk版本:                   JDK 8U201   https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
    appengine版本:        appengine-java-sdk-1.9.73   https://cloud.google.com/appengine/docs/standard/java/download
    nginx版本:               nginx/Windows-1.14.2  http://nginx.org/en/download.html
    php版本:                 PHP 7.1 (7.1.25)  VC14 x64 Thread Safe (2018-Jun-21 03:05:00)       http://windows.php.net/download/
           可能需要 VC14运行库(Visual C++ Redistributable for Visual Studio 2015) https://www.microsoft.com/zh-CN/download/details.aspx?id=48145

单机个人版特点:https://gte.fsyz.net/node/1915

    1.同步官方最新版本,没有对java源代码进行修改,仅修改war\login.jsp及\war\WEB-INF\appengine-web.xml
    2.无需联网,已经设置Rendezvous服务器为127.0.0.1:8888;
    3.带有桌面汉化版AI伴侣,已经设置Rendezvous Server为127.0.0.1:8888,默认勾选 使用旧版方式连接;
    4.绿色软件,直接运行2个bat就可以使用,使用过程中不能关闭bat界面。
    5.首次使用,请将war\WEB-INF\下的 appengine-generated.test 目录重命名为appengine-generated,默认管理员用户test,密码test账号。

使用方法:

        启动设计服务器:rundev.bat chrome浏览器打开http://127.0.0.1:8888 即可使用,默认管理员账号:test 密码:test。停止设计服务器:Stopdev.bat。
        启动编译服务器:runbud.bat (若命令行中文乱码,修改命令窗口的属性--字体为字体"Lucida Console"或"新宋体";)
        启动桌面版AI伴侣:AI伴侣.bat    Rendezvous Server已经设置为127.0.0.1:8888及默认勾选 使用旧版方式连接。
        单机版无法扫描二维码下载打包的apk文件,因为服务器ip是127.0.0.1:8888。

要能扫码下载,或者,使用手机上的AI伴侣,要让AI2离线服务器工作在自己的IP地址上.

1.Rundev.bat要修改:

        start "DevAppServer" /min chcp 65001 &&java -cp "%APPE_HOME%\lib\appengine-tools-api.jar"  com.google.appengine.tools.KickStart  com.google.appengine.tools.development.DevAppServerMain %*  --port=8888 --disable_update_check --address=127.0.0.1 war 

要将127.0.0.1修改为自己电脑网卡的IP地址.

2.修改 war\WEB-INF\appengine-web.xml中

3.修改桌面版AI伴侣、手机AI伴侣的Rendezvous Server为自己电脑IP:8888,并勾选Use Legacy Connection。

这样,桌面版AI伴侣,手机上AI伴侣,都可以正常工作了.

网络版:https://gte.fsyz.net/node/1916     带部分网络服务功能  请了解快速指南: https://gte.fsyz.net/node/1898

    1.后台增加用户批量添加功能         https://gte.fsyz.net/node/1877

    2.上传文件限制改为100M ,编译文件限制改为10M      https://gte.fsyz.net/node/1876

    3.登陆默认设置为中文   https://gte.fsyz.net/node/1875

    4.增加nginx反向代理,支持php以及passmail功能  https://gte.fsyz.net/node/1902 https://gte.fsyz.net/node/1887

    5.类似MIT的“帮助”--“AI同伴信息                    https://gte.fsyz.net/node/1890

    6.禁止/login/google /_ah/login /_ah/admin目录,避免熊孩子捣乱。 https://gte.fsyz.net/node/1900

    7.修正官方源码中文登录界面密码出错空白页面      https://gte.fsyz.net/node/1928

使用方法:

    启动设计服务器:rundev.bat   chrome浏览器打开http://127.0.0.1:8888 即可使用。 停止设计服务器:Stopdev.bat。
    启动编译服务器:runbud.bat  (中文乱码,修改命令窗口的默认值--字体;关闭;重开)
    启动桌面版AI伴侣:AI伴侣.bat  要勾选 使用旧版方式连接。
    启动nginx反向代理:run_nginx_php.bat   (不需要管理员身份运行)   https://gte.fsyz.net/node/1902    完成注册密码修改的邮件发送
                chrome浏览器打开http://127.0.0.1 (或你自己修改nginx.conf指定ip或域名)即可使用。
    停止nginx反向代理  stop_nginx_php.bat  (不需要管理员身份运行)

    首次使用,可将war\WEB-INF\下的 appengine-generated.test 目录重命名为appengine-generated,则默认管理员用户test,密码test,然后在“管理”菜单--“User admin”可新建管理员,并可取消test管理员身份。自定义管理员账号请查看快速指南: https://gte.fsyz.net/node/1898