正如你看到文章的标题所示.这是一个Dribbble 基于windows phone 8的客户端.[开源项目]

对于大部分的开发人员来说很少关注Dribbble[不妨打开看看或是注册一个player账号]社区.当然我也是年前开始开始在这个社区里游荡.简单来说Dribbble是一个面向创作者、设计师等创意类作品的人群,提供在线展示作品的一个平台.国内设计类社区看到@夏涛做的一个方格本算得上是比较纯粹的.大部分专业设计师还是直接转战到DribbbleBehanceCargo等社区.如果你觉得这些还不够直观.你可以看看国内整理一些在Dribbble一些交互设计[那些过目不忘的无线交互设计-from dribbble].应该能对你Dribbble社区有一个直观的印象.

在Dribbble上基本上能够看多目前很多顶级设计师发的一些作品.活跃而有名都无需过多介绍随意列举一些:

Eric Hoffman:Jellyjar的设计师 社区知名度较高.

Jeff Broderick:Collective Ray设计师

Mark Jardine:著名的两人团队Tapbots成员.作品包含Tweetbot、Converbot等

Jonatan Castro: Squire、Flight Card的设计者.

James McDonald: 作品包含Fav.tv、Gifture app等

Danny Trinh : Path的设计师.

……

说道Dribbble原来在有人在weibo上问我和Behance的区别. 如下说一些个人的体会.

当你打开Dribbble 如果你没有注册或登录账户你会发现在Title会有一个banner如下:

如果你留意过上面写的话:

What are you working on?

--Dribbble is show and tell for designers

其实它并不是Dribbble的广告.应该算是这个社区的口号:“你正在创作什么?”通过这句话你应该清晰感受Dribbble鼓励创造者上传个人的作品、以及正在创作的作品到Dribbble上来.虽然可以上传一些附件.但你发现每个shot主要内容是一张400*300的小图.它设计的初衷就是为了展现设计中一些Detail细节.用限定大小的方法能够保证用户能够指定的时间看到更多的作品.

如果你常在Dribbble社区上看作品.你应该会知道Dribbble上作品以GUI设计、平面设计、插图、VI设计为主.这点相对Behance上种类显得更多.还包含了广告、建筑、摄影、motion等等.Dribbble上需要会员邀请才能发布作品.而这种片段式作品 更加注重的反馈和成员之间的交流.Dribbble盈利模式其实很简单就是靠用户购买付费账户的服务.而Behance则是一个作品集合的平台.它最大的特色里面很多设计方案都是已经发布成型的产品.而相对Dribbble展示300*400区域小而美.Behance则针对单个作品设置和展示的内容和自由度多太多了.

如果用一句话来概括这两社区”性格”特点: Behance 严肃而严谨. Dribbble调皮而富有创新. 各取所需又各有交集.

说了这么多.回到正题.我原来并不知道Dribbble有API.只是用过期IOS上客户端直到有一天无意在期团队Blog中发现API更新Realse note 才发现Dribble API. 于是.在通读完了后.梳理完APi接口,就毫不犹豫打算开发一个Dribbble windows phone 8客户端. 于是乎 经过3天设计和空闲时间开发就有了如下面貌:

Popular:

Everyone:

Debuts:

Designer[Search]:

Detail[Shot]:

Comments[Shot]:

User Profile:

User Recent Shots:

User Following:

User Followers:

这个版本功能功能并不多.至于为什么开发这些.有些问题放在后面说. 首先说一下当前版本存在功能:

A:通过Popular、Everyone、Debuts浏览分类下作品.

B:点击单个Shot可以浏览每个作品详情、作品评论、以及创造者信息.[点击用户头像可以进入用户详情]

C:点击用户头像[圆形]可以浏览用户详细信息、近期作品、粉丝、关注列表.

D:通过username[唯一id]搜索dribble中用户.点击可以查看改用详细信息.

大概功能如上.它主要目的用来浏览Dribble社区内容.用户不能发表评论.关注用户等交互操作.这个主要因为目前Dribbble APi还是beta版本. 你如果要问我为何只有popular而没有highlight分类. 凡是api开发出来涉及到功能基本在这个版本都体现出来.如果没有这个功能其实真正的原因是dribbble 并没有开放这部分api. 官方开放的api列表如下:

Dribbble APIs:

  1. GET/shots/:id [http://dribbble.com/api#get_shot] 通过作品唯一shot id.返回一个作品的详细信息.
  2. GET/shots/:id/rebounds [http://dribbble.com/api#get_shot_rebounds] 通过一个shot id【中rebound_Source_Id】返回该shot 中Rebounds集中内容.
  3. GET/shots/:list [http://dribbble.com/api#get_shots_list] 通过一个特定分类返回该分类下所有的Shot数据集合内容 [支持分页]
  4. GET/players/:id/shots [http://dribbble.com/api#get_player_shots] 根据特定用户唯一的username 返回该用户最近发布是shot内容.[支持分页]
  5. GET/players/:id/shots/following [http://dribbble.com/api#get_player_shots_following] 根据一个关注用户唯一的username 返回该用户关注好友最近发布的所有shot内容.[支持分页]
  6. GET/players/:id/shots/likes [http://dribbble.com/api#get_player_shots_likes] 根据一个特定用户唯一的username 返回该该用户喜欢的Shots集合内容[支持分页]
  7. GET/players/:id [http://dribbble.com/api#get_player] 根据用户唯一的username获取该用户个人信息.
  8. GET/players/:id/followers[http://dribbble.com/api#get_player_followers] 根据用户唯一的username获取该用户粉丝列表.
  9. GET/players/:id/following[http://dribbble.com/api#get_player_following] 根据用户的唯一username获取该用户的关注列表
  10. GET /players/:id/draftees [http://dribbble.com/api#get_player_draftees] 根据用户的唯一的username 获取该用户的对应Draftees列表.
  11. GET /shots/:id/comments [http://dribbble.com/api#get_shot_comments] 根据指定shot id获取该作品的所有的评论列表.

FAQ:这个版本后是否还会继续维护?

不会.主要是因为目前Dribbble API BEta版本存在很大的问题.

FAQ:为何出现加载数据不全?或是提示稍后加载数据?偶尔还会有崩溃.

首先我想正式说明这个问题.我为何放弃这个版本维护? 主要是因为Dribbble 目前API存在一些比较重大缺陷.导致客户端有些问题不可控.首先官方在API限制如下:

API calls are limited to 60 per minute and 10,000 per day

每分钟请求数量不能超过60次.每天不要超过1W次.60次在一分钟基本够用.但偶尔在请求比较丰富ui文本会返回:

"Rate Limit Exceeded

如果你看到这个提示不要奇怪.这个是因为服务器端针对APi请求次数的限制.稍后一分钟后在请操作及正常使用. 如果你在某些页面出现意外的Crash崩溃现象.或是提示”Json Format is invalid” 这个事什么问题?主要是Dribbble API在某些情况下类似一天请求次数过多.或是服务器响应请求时间过长导致请求timeout.要接受的Json数据格式不完整.解析Json时出现Exception.导致应用程序崩溃.而且出现问题基本在所有接口调试过程都出现过.不过客户端已经处理.在正常使用过程中基本不会出现这种情况.但还会有提示.这些问题我已经向官方询问并反馈.得到答复是等待正式版API发布.

正式因为Dribbble APi现在BEta版本存在这些的硬伤. 让我觉得维护这个版本开发已经没有多莫大的意义. 所以这个客户端并不会发布到市场[如果有人可以代发也是可以的].当然这个版本没有经过严格测试.我也偷懒了没有做UT.所以如果你遇到某些bug导致客户端崩溃.还请谅解.

基于如上原因开源这个项目.遵循BSD开源协议.

项目源码: [https://github.com/chenkai/dribbble-for-windows-phone-8]

Contact: [@chenkaihome]

Dribbble for windows phone 8的更多相关文章

  1. Windows server 2012 添加中文语言包(英文转为中文)(离线)

    Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...

  2. Windows Server 2012 NIC Teaming介绍及注意事项

    Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...

  3. C# 注册 Windows 热键

    闲扯: 前几日,一个朋友问我如何实现按 F1 键实现粘贴(Ctrl+V)功能,百度了一个方法,发给他,他看不懂(已经是 Boss 的曾经的码农),我就做了个Demo给他参考.今日得空,将 Demo 整 ...

  4. Windows 7上执行Cake 报错原因是Powershell 版本问题

    在Windows 7 SP1 电脑上执行Cake的的例子 http://cakebuild.net/docs/tutorials/getting-started ,运行./Build.ps1 报下面的 ...

  5. 在离线环境中发布.NET Core至Windows Server 2008

    在离线环境中发布.NET Core至Windows Server 2008 0x00 写在开始 之前一篇博客中写了在离线环境中使用.NET Core,之后一边学习一边写了一些页面作为测试,现在打算发布 ...

  6. Windows平台分布式架构实践 - 负载均衡

    概述 最近.NET的世界开始闹腾了,微软官方终于加入到了对.NET跨平台的支持,并且在不久的将来,我们在VS里面写的代码可能就可以通过Mono直接在Linux和Mac上运行.那么大家(开发者和企业)为 ...

  7. dll文件32位64位检测工具以及Windows文件夹SysWow64的坑

    自从操作系统升级到64位以后,就要不断的需要面对32位.64位的问题.相信有很多人并不是很清楚32位程序与64位程序的区别,以及Program Files (x86),Program Files的区别 ...

  8. 在docker中运行ASP.NET Core Web API应用程序(附AWS Windows Server 2016 widt Container实战案例)

    环境准备 1.亚马逊EC2 Windows Server 2016 with Container 2.Visual Studio 2015 Enterprise(Profresianal要装Updat ...

  9. 1.初始Windows Server 2012 R2 Hyper-V + 系统安装详细

    干啥的?现在企业服务器都是分开的,比如图片服务器,数据库服务器,redis服务器等等,或多或少一个网站都会用到多个服务器,而服务器的成本很高,要是动不动采购几十台,公司绝对吃不消的,于是虚拟化技术出来 ...

随机推荐

  1. table tr foreach td 换行

    @{ ;} <table style=" class="sy_table"> <tr> @foreach (DataRow dr in (View ...

  2. CSS 框模型

    CSS 框模型 CSS 框模型概述 CSS 内边距 CSS 边框 CSS 外边距 CSS 外边距合并 一,CSS 框模型 (Box Model) 规定元素框处理元素内容.内边距.边框 和 外边距 的方 ...

  3. request.getParameter(“参数名”) 中文乱码解决方法

    今天浏览项目时候,遇到一个问题,页面用${requestScope.参数名 }获取的值是乱码,然后搜了一下,最后说是编码的问题,附上查找的结果: 在Java 开发中,如果框架搭建的不完善或者初学者在学 ...

  4. js数组中数字从小到大排列

    function findMin(start,arr){ var iMin = 99999; var iMinIndex = -1; for(var i = start;i<arr.length ...

  5. zDiaLog弹出层

    zDiaLog弹出层  立即下载 插件描述:zDiaLog弹出层 弹出框: 代替window.open.window.alert.window.confirm:提供良好的用户体验: 水晶质感,设计细腻 ...

  6. .NET轻量级RPC框架:Rabbit.Rpc

    最近准备写一个.NET的管理平台应用在公司,由于存在大量的Client => Server,Server => Client的请求需求在加上之前一直接触了解过RpcClient组件的开发, ...

  7. [转载]Linux 线程实现机制分析

    本文转自http://www.ibm.com/developerworks/cn/linux/kernel/l-thread/ 支持原创.尊重原创,分享知识! 自从多线程编程的概念出现在 Linux ...

  8. CMS本质上是什么

    2015-121.数据可以任意取和构造,结构也很自由,不一定是“站点-栏目-文章-评论”.2.主要用于显示,前台不产生数据(评论.浏览次数除外).3.在模版进行循环.判断,也比后台写代码要方便很多很多 ...

  9. hibernate基础dao类

    此文章是基于 搭建SpringMVC+Spring+Hibernate平台 功能:数据库的保存.更新.删除:sql.hql查询:分页查询:调用存储过程 创建hibernate基础dao类: BaseD ...

  10. 使用 python 获取 Linux 的 IP 信息(通过 ifconfig 命令)

    我们可以使用 python 代码通过调用 ifconfig 命令来获取 Linux 主机的 IP 相关信息,包括:网卡名称.MAC地址.IP地址等. 第一种实现方式: #!/usr/bin/pytho ...