Dribbble for windows phone 8

chenkai發表於2013-08-02

正如你看到文章的標題所示.這是一個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如下:

2013-08-02_181232

如果你留意過上面寫的話:

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:

wp_ss_20130802_0001

Everyone:

wp_ss_20130802_0002

Debuts:

wp_ss_20130802_0003

Designer[Search]:

wp_ss_20130802_0010

Detail[Shot]:

wp_ss_20130802_0004

Comments[Shot]:

wp_ss_20130802_0005

User Profile:

wp_ss_20130802_0006

User Recent Shots:

wp_ss_20130802_0009

User Following:

wp_ss_20130802_0007

User Followers:

wp_ss_20130802_0008

這個版本功能功能並不多.至於為什麼開發這些.有些問題放在後面說. 首先說一下當前版本存在功能:

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]

相關文章