3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
編註:曾獲蘋果年度十佳 App 的剪貼板效率應用 Pin 在今天發布了 3.0 大版本更新,新增了「xTeko 實驗室」模塊。有編程經驗的用戶可以利用它製作擴展,沒有編程經驗的用戶,也可以通過內置商店下載製作好的擴展直接使用,用 Pin 開發者鍾穎的話說就是「Pin 的小程序系統」。可以說 xTeko 拓寬了 Pin 的能力範圍,讓它做到了很多以前做不到的事情。本文作者是 Pin 的開發者鍾穎,他將以通俗易懂的方式,向大家詳細介紹 Pin 3.0 的變化。Pin 今天推出了上線以來最大的一次更新:「xTeko 實驗室」,用一句話概括這次更新的話就是:Pin 3.0 支持基於 JavaScript 的擴展程序,這意味著 Pin 已經從一個剪貼板應用蛻變成了「可擴展的效率利器」。▍能做什麼對於大部分的用戶而言,這個功能能做什麼是最重要的。通俗的講,xTeko 帶給 Pin 一種插件熱插拔的能力,讓 Pin 可以隨時載入、拆卸基於 JavaScript 編寫的各種擴展,用一個通俗的比喻就是:Pin 的小程序系統。雖然從技術的角度並無多少相似之處,但這樣是最容易理解的。但是 xTeko 也有一些獨特的優點,例如:支持運行在通知中心上;支持運行在分享面板上;支持豐富的原生介面調用,並且不斷在增加;支持通過 Pin 內置的動作系統啟動,與 Pin 現有功能有緊密的結合;僅僅需要 JavaScript 就能寫出擴展,無須任何依賴以及 iOS 知識;支持構建純原生、高性能的 iOS 用戶界面。完全支持一門編程語言的標準是極為重要的,這意味著它能解決絕大部分「編程能解決」的問題,所受限的只是你的想象力。▍如何使用正如上述內容提到的,擴展插件支持很多的入口,所以我們有必要看看如何使用它,在這裡會盡量介紹一些有趣的例子。xTeko 實驗室在這裡可以點擊播放鍵運行擴展,界面支持滑動返回(到了首頁繼續返回將關閉界面):通過長按可以對擴展進行排序操作:排序操作滑動可以刪除某個擴展:目前這個編輯器支持簡單的代碼高亮和格式化操作,將會在之後的更新中逐步完善對自動提示的支持。想要安裝擴展?打開擴展商店便可以瀏覽在線推薦的擴展插件(目前擴展數量不多,還沒有提供搜索操作):擴展商店▍從通知中心啟動擴展Pin 作為從通知中心起步的應用,對通知中心的支持是必不可少的,所以大部分的擴展都會支持從通知中心運行,並且 Pin 3.0 提供了一個獨立的插件:從通知中心啟動擴展不過受限於 iOS 的系統限制,部分功能無法在通知中心直接運行(例如拍照),部分功能在通知中心運行效果較差(例如列表不能滾動),退而求其次的,xTeko 可以從通知中心打開到主應用內去運行。▍從分享面板啟動除了新增加的通知中心小部件以外,Pin 3.0 還提供的獨立的分享面板插件,可以方便的從分享面板啟動各種擴展:從分享面板啟動這種操作方式帶給了 Pin 增強其它應用的能力,只要從分享面板中啟動,將可以獲取的分享的數據,之後我們將看到一些有趣的例子。▍如何安裝擴展Pin 的擴展插件支持多種安裝方式,除了可以直接在擴展商店裡面安裝以外,還可以通過以下方式安裝:通過打開擴展商店分享出來的鏈接直接安裝;如果是在電腦上打開的分享頁面,可以通過掃描二維碼安裝;支持通過 Web 伺服器從電腦端傳輸腳本到 iOS 設備;支持 AirDrop 從 macOS 傳輸腳本到 iOS 設備;支持從別的應用通過分享面板拷貝到 Pin 裡面;支持通過 URL Scheme 安裝擴展,例如:pin://install?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcyanzhong%2FxTeko%2Fmaster%2Fextension-scripts%2Fapi.js&name=%E6%B5%8B%E8%AF%95%E5%9C%A8%E7%BA%BF%E5%AE%89%E8%A3%85&icon=icon\_063.png複製腳本的鏈接,通過實驗室的導入功能。提供多種方式是為了讓擴展腳本的分享變得更便捷,後續會考慮讓用戶上傳自己的腳本,讓擴展插件的分享變得進一步簡單。▍一些有趣的例子描述總是空洞的,再詳細的描述不如看例子來的容易理解,這裡展示幾個擴展插件的功能(均可以從商店下載)。在通知中心查詢匯率:查看微信上面不支持預覽的文件:在相冊搜索圖片(以圖搜圖):在 App Store 上面獲取資源:在 App Store 上面查看應用信息:圖片打包分享:在 Safari 上面查看網頁源碼:以上只是部分擴展插件的效果展示,在之後擴展商店的內容也會不斷的更新,從而可以實現各種各樣的需求,需要的時候安裝,不需要時即可卸載。▍如何開發 xTeko 插件Pin 3.0 支持的是標準 JavaScript,也就是說所有 ECMAScript 標準的內容都可以使用,但不包括 BOM 也就是瀏覽器對象,例如 window在 xTeko 實驗室中有默認安裝的兩個插件 API 示例 和 UIKit 示例,分別展示了部分 API 如何使用,以及如何實現自定義的界面,可以起到較好的參考作用。將寫好的代碼通過上述提到的安裝方式安裝到 iOS 設備上,就能夠運行、測試了。在一篇以用戶為主要受眾的文章中,並不會介紹過多的開發細節,關於開發所有的細節都在 官方文檔 里:亟待解決的問題其實 xTeko 從打算開始做到現在已經陸陸續續持續了半年時間,按理說應該拿出一個很靠譜的版本才對,實際上現存的版本有很多問題:無法重命名一個擴展(已經提交新版解決);在商店更新擴展並不方便(正在實現新的界面);通知中心性能不好,部分擴展運行起來會崩潰;開發過程中不好調試(正在優化);部分開發介面文檔缺失,或者不夠詳細(正在細化)。很抱歉現狀並不夠好,在之後的更新中將會努力地逐步的優化,敬請期待。▍一些相關信息最重要的是 xTeko 的 官方文檔, 之後任何關於擴展插件框架的更新都會同步到這裡。同時,我們也建立了一個 Telegram Channel 用於推送擴展商店上面的更新,歡迎訂閱:點此訂閱當然,歡迎任何對此有興趣的開發者朋友關注 這個開源項目,上面會同步所有的腳本更新和用戶教程更新(也歡迎提交 PR)。最後,一如既往地,不管是用戶還是開發者,都歡迎通過郵件交流使用或者開發方面的問題:log.e@qq.com。▍xTeko 的願景儘管 xTeko 的現狀是渺小的,但它的願景是偉岸的:讓有能力寫程序的人寫程序;讓有能力改代碼的人改代碼;讓有興趣的朋友加入這個隊伍;讓小白也可以從商店安裝擴展。Write script for your life,為你的生活編寫腳本。一起做點有趣的事,我們最終的目標是讓生活更有效率。P.S. 「xTeko」這個單詞是我胡亂拼湊的,沒有任何意義,但正如 xkcd 一樣,如果說刻意讓其沒有意義也算是一種意義,那 xTeko 的想法就如同 xkcd 網站:想要一個沒有任何意義的名字,這樣就不會有一天對其感到厭倦。下載少數派 iOS 客戶端,不再錯過任何一款好用的 App

本文由yidianzixun提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦