第三天. APICloud的安装与使用

在第二天的开发中, 我们可以发现, 其实列出指定文件夹下的指定类型文件是一个常用的功能, 即它不仅在某个特定的app中会用到, 而且会在其他app中用到. 故我们最自然的想法是将其封装为一个模块, 然后可以在很多app中调用该模块. 这样做的好处是:

模块可以提高代码的重复利用率

在下一次我们将用APICloud来开发模块. 本次来熟悉下APICloud的基本使用.

安装APICloud

  • 下载你最熟悉的编辑器. 我选择的是Sublime Text3(以下简称ST3), 可以用这里的注册码破解.
  • 安装ST3包管理器: 详见Package Control的安装文档.
  • 下载与编辑器对应的APICloud插件, 例如Sublime APICloud Plugins. 启动ST3, 点击Preferences>Browse Packages..., 进入ST3的包目录. 将刚刚下载的插件解压到该目录. (似乎可以有个外层目录Sublime-APICloud-Plugins_v1.3.0不影响功能, 我是去掉这个外层目录, 直接copy四个目录到该包目录:APICloudWiFiSync,Sublime-APICloud-Loader,Sublime-APICloud-Package,Sublime-APICloud-Snippet)并重启ST3.

当你安装成功时, 新建一个test.js, 输入apiready可以看到该函数的提示.

至此, 我们已经完成了APICloud的安装.

用APICloud开发第一个应用

作为第一个应用, 我们将演示如何使用APICloud的现成模块快速开发应用.

  • 为你将要写的App新建一个工作目录, 例如D:\APICLOUD. 将该目录拖入ST3的窗口, 选中该目录并右键弹出新建APICloud项目>空白应用, 此时会在下方要求输入app名, 例如ListMusic, Enter键后看到项目目录.
  • 需要修改的文件:config.xml, index.html,html>main.html

逐个文件的修改

config.xml的修改

config.xml规定了app的基本属性, 我们需要修改的是id="A0000000000001"(选择性修改name, description, author, email, href), 其中id需要在云服务器上新建一个同名应用:

  • 进入http://www.apicloud.com/console
  • 点击创建应用>默认Native(原生)>填入名称ListMusic以及说明. 成功后在左上角会看到ID:A6926508876734. 更新config.xml的ID即可.
index.html的修改

你可以修改index.htmlh1, 最终的效果就是相当于一个网页的h1. 作为理解, 我们来看一下整个app的结构. 它非常类似一个网页. 例如, 在index.html中有个id='main'div, 其后用JavaScript在该div中插入了一个新的Frame, 这个frame的内容是"html/main.html", 而高度由$api.offset(main).h获得, 位置由$api.offset(header).h获得. 具体代码摘录如下:

var header = $api.byId('header');
        //适配iOS 7+,Android 4.4+状态栏
        $api.fixStatusBar(header);

        var headerPos = $api.offset(header);
        var main = $api.byId('main');
        var mainPos = $api.offset(main);
        api.openFrame({
            name: 'main',
            url: 'html/main.html',
            bounces: true,
            rect: {
                x: 0,
                y: headerPos.h,
                w: 'auto',
                h: mainPos.h
            }
        });
main.html的修改

理解了上述结构, 我们就知道main.html相当于是网页中的一个frame, 故它有frame title:Hello APP, 作为示例, 我们来演示如何使用模块audio播放一首在线歌曲.
首先打开audio在线文档, 按照说明我们只需如下修改即可:

<script type="text/javascript" src="../script/api.js"></script>
<script type="text/javascript">
    apiready = function(){
        var player=api.require('audio');
        player.play({
            path: "https://ghost.vanabel.cn/content/images/other/beeps.mp3"
        })
    };
</script>

真机调试

通过数据线

打开开发者模式并启用USB Debug, 在ST3的ListMusic目录上右键:Android真机同步, 此时会自动下载并安装Apploader, 然后启动该应用, 你应该可以听到正在播放的音乐beeps.mp3.

通过wifi

一旦成功安装AppLoader后, 也可以通过无线的方式调试app.

  • ListMusic目录上右键:WiFi真机同步配置, 首先安装服务, 然后开启服务, 最后查看服务器ip:port.
  • 在手机的APPLouder上有个悬浮球, 点击输入对应的ip:port并连接, 成功后会变绿.
  • ListMusic目录上右键:WiFi真机同步或者WiFi全量真机同步即可.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明先生_x阅读 15,967评论 3 119
  • 生活就是一个不断遇到问题,然后去解决问题的过程,所谓生容易,活不易,之所以不易,就是因为要面对很多很多困难,而且要...
    柒零晓阅读 261评论 2 4
  • 身体不给力的时候难免有点委屈和恐惧,还要一面管住对自己无能的愤怒,一面再鼓励自己耐心等待,不知道这样的风波要多久,...
    自由和安阅读 131评论 2 0
  • 01 这是个意外事件! 这是个意外事件!职场中你是不是常常听到这句话? 客户越过主管人员找到你投诉产品问题,你追查...
    月牙年轮阅读 189评论 2 4