基于uchome构建自己的应用平台

blueeon , 2010/07/21 12:32 , ABOUT LAMP , 评论(0) , 阅读(155) , Via 本站原创 | |
前几天因为项目需要,在uchome上面做了一个应用,功能是提供对远端通讯录数据库里面信息进行管理的功能。就是将一个手机通讯录管理界面,做到uchome里面。
带我的前辈说,以后要是在添加应用的话要比较方便。我想,那就做一个和manyou平台比较类似的东西吧。
初步功能需求是这样的:
    用户可以浏览我们要提供的应用的候选列表;
    用户可以在这个候选列表中进行添加;
    用户可以管理、删除自己已经添加的应用;
    用户可以正常访问每个应用;
    每个应用和uchome尽量减少耦合,便于安装;
    系统管理员可以对每个应用进行一些设置,例如有些应用我想让用户默认安装并且不能删除(霸王政策,嘿嘿)。

实现:
    使用插件机制来管理控制app。
    增加plugs文件夹作为插件文件夹。
    增加testapp(名字随便取得).php作为入口文件。
    因为模板加载我没有时间独立出来了。所以模板文件还是放在默认的template文件夹下面。


编写入口文件:
    入口文件我是模仿的uchome的入口文件来写的。可以查看根目录下面的 space.php  do.php等等来写。
    无非就是根据一些参数调用不同的插件文件。

编写插件:
    插件应该是比较独立的,数据库可以是与uchome分离的。我在每个插件下面放置一个配置文件来进行简单的配置。比如我写的通讯录理,插件要完成的工作有将通讯录按照要求读出来,然后和其他的一些信息,通过json传递给模板文件。最后记着加载模板文件就行了。

模板文件:
    模板与系统自带的模板类似。

两个特殊的插件:
    因为是模仿的MANYOU的那种应用管理模式,我们需要一个添加按钮,来获取我们可以提供的app列表,另外需要一个管理功能,来进行诸如删除的一些操作。这个我同样用插件来实现,然后让这两个插件默认被选上并且不能被删除。

插件的文件结构:
/appPackage--+--/plugs
             |      |-----/style
             |      |-----pluginfo.php.inc
             |      |-----testapp_appname.php
             |      |-----others
             |
             |
             |--/template
             |      |-----/default
             |                |-----testapp_appname.htm
             |                |-----others
             |               
安装的时候只需要覆盖uchome文件夹即可。

值得注意的是,我们还需要修改一下系统的space.php do.php header.htm这几个文件,要加上应用菜单的代码,并在header.htm里面展现出来。

好了,还有很多的细节的地方是需要仔细修改的,这里我基本上简单的说了建立这样的应用平台的思路。
Creative Commons License
Creative Commons License
本作品适用 署名-非商业性-禁止演绎 作品 CC 2.5 中国 并依循所适用的授权条款.
Tags: , , ,
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]