IT技术博客大学习 共学习 共进步

一个简单的基于PhoneGap的开源微博客户端

方糖气球 2012-04-19 23:33:49 浏览 5,022 次

    有人说PhoneGap做不了复杂的东西,比如微博客户端。这话对,也不对。因为光是用PhoneGap的标准接口是没办法做OAuth认证的,页面转换几次就不知道跳到哪里了;但是别忘了,PhoneGap拥有强大的插件系统。在GitHub上的PhoneGap插件库中,就有Facebook之类的OAuth2插件。

    从4月18日起,新浪移动云的打包器和调试器开始支持微博插件,这让微博客户端开发变得异常简单。

    于是我做了一个特别简单的微博客户端(只有登录和读取Feed和@我),然后把它放到了GitHub上

    这篇文章主要讲怎样把这个简单的客户端换成你的key,让它工作起来,然后你可以以它为基础,修改成你想要的各种客户端。

    在继续之前,请更新你的云窗调试器到最新版本。(目前只支持Android,iOS版本测试中)

创建微博开放平台应用

    首先进入微博开放平台,创建一个客户端应用。

    

    填好基本信息后,就可以创建一个移动客户端应用了。

    

    创建成功后,进入应用的【基本信息】页面,可以看到app key和app secret。

    

    因为PhoneGap打出来的包很容易被人反向工程,找到里边的key,所以新浪移动云的微博插件里边不直接使用这两个key。

    新开一个窗口,进入云窗key加密页面。(稍后这个页面会整合到SAE去)

    输入appname,和微博应用【基本信息】页面的两个key值,可以得到新的两个key。把它们记下来。稍后会用到。

    

    然后回到微博开放平台,进入应用的【高级设置】,在【回调地址】页面填上http://appname.sinaapp.com

    

    这个步骤非常重要,很多同学都是因为忘了填写而导致授权失败。

    三个必须的东西:

  • 加密后的App Key
  • 加密后的App Secret
  • 填到应用高级信息里边的回调地址
  • 创建SAE移动应用

        进入SAE,创建一个移动应用,代码模板选择【默认模板】。

        

        成功创建以后,代码目录会出现一个client文件夹。

    获取代码

        你可以通过git或者下载链接获取最新的Demo代码,然后打开js/app.js文件,将129行开始的内容换成前文中得到的对应的值。

        

        修改完成后,将Demo代码传到SAE代码目录的client文件夹,然后你就可以通过【云窗调试器】进行调试了。

    插件接口简介

        这里简单的说下微博插件用法。微博插件在js中的对象为CDV.WB,它有6个方法,分别是:

  • CDV.WB.init - 初始化
  • CDV.WB.login - 登录
  • CDV.WB.logout - 终止会话
  • CDV.WB.get - get请求
  • CDV.WB.post - post请求
  • CDV.WB.upload - 带文件的post请求
  •     详细的范例可以查看【简微】客户端中js/app.js。

    建议继续学习

    1. 基于 PhoneGap 与 Java 开发的 Android 应用的性能对比 (阅读 6,265)
    2. Phonegap + HTML5 开发经验小结 (阅读 5,165)
    3. 手机客户端适配性 (阅读 4,622)
    4. PhoneGap应用开发的那些坑爹事儿 (阅读 4,184)
    5. PhoneGap开发不可或缺的五件装备 (阅读 3,362)
    6. 为你的博客制作一个安卓客户端 (阅读 3,302)
    7. 手机客户端开发定位 (阅读 3,062)
    8. TwitEase的那些事 (阅读 2,844)
    9. 初识PhoneGap (阅读 2,823)
    10. 客户端应该去计算什么? (阅读 2,723)