同事想让我帮他做discuz论坛的iOS应用开发,在github上看到15年有公司曾经做过一个discuz的插件,叫做bigApp,目的就是快速的把discuz转成iOS应用,但不知为何后来就突然死亡了。
基于github上还有残存的代码,和同事商量觉得对这部分代码进行评估和调研。
与我而言,我更倾向前端 + leancloud(或者Parse Server) + iOS这种把前端,服务器端和手机端隔离独立的方案, 把leancloud(或者Parse Server)作为数据中心来进行开发,这也是我看到的掘金提出的方案。
不过因为自己不太懂前端,服务器端的技术,不可能一个人把所有方案都写出来。而同事更倾向于购买现成的源代码,方案等。所以他最终选择了discuz这个基于论坛又有着丰富插件/模版的方案来作为他web端的产品。
不过我对python更是不了解了,所以只能摸着石头过河了。而这份bigApp的源码就相当于一个引导了。
再决定这个方案后,那么就开始评估吧。
安装XAMPP
去官网上下载安装包即可(PHP 5.6.30版本,因为使用的是discuz3.2),如果是首次安装,应该会非常顺利。如果之前安装过或者单独安装过组件,可能会遇到一点小问题,例如mysql端口被占用等等,google下解决即可。
安装discuz
http://www.discuz.net 下载3.2 简体 UTF8版本。
解压后把upload文件夹copy至XAMPP安装目录下htdocs的目录里,并修改为你喜欢的名字,例如BBS
在浏览器地址栏输入localhost/bbs,即可进入安装界面。
新安装的话,基本一路Next下去即可,遇到文件写权限问题添加权限即可。
可以参考 http://jingyan.baidu.com/article/b87fe19eb57ff252183568d9.html
安装bigApp插件
解压,找到Discuz目录下的bigapp文件夹, 将bigapp文件夹上传到“$DISCUZROOT/source/plugin/”下;
将“$DISCUZROOT/source/plugin/bigapp/ repfiles/iyz_index.php”拷贝到“$DISCUZROOT/api/mobile/”中;
-
登录Discuz插件后台,安装插件,启用插件。然后在已启动的插件里面就可以看到BigApp了。
事实上上面好多功能都已经不能用了。需要一个个调查下。
下载BigApp_Discuz_iOS
解压,打开Clan.xcodeproj即可。
编译
-
编译只有一个问题,如下,把WeakReferences in Manual Retain Release改成Yes即可
配置
找到ThemeStyle.plist,把YZBaseURL修改为http://localhost/BBS/ (注意,BBS是你修改的Discuz论坛的目录名字)
事实上还有其他很多配置,但当前目的仅仅是运行程序,所以进修改了网站的地址,当前是本地的Discuz。
-
模拟器结果
基本的样子还是有的,但很多数据还是不正确。
此外,发帖会导致程序崩溃。
工时:
- 前期调研 1 day
- 环境搭建及配置运行 0.5 day
接下来的工作:
加下来会细看 Discuz, BigApp插件以及 BigApp iOS之间的相互关系和iOS 代码的成熟程度,二次开发的难度,额外消耗等。预计这个评估为5-7个工作日。