盤點7種提升Android應用輔助功能的方法android
在手機應用設計中,可接入性時常爲人所忽略。可接入性的含義是,設計的應用適用於全部用戶,包括那些有特殊需求的人或殘障人士。這類輔助功能漸漸也須要知足某些特別狀況的用戶需求,好比,如今交通安全法限制汽車駕駛員使用他們的設備。安全
隨着手機平臺日漸成熟,儘管可接入性功能已成爲開發者SDK的部份內容,但它們很容易被新開發者忽略和遺忘。開發者們簡單迅速地製做出應用,而後將其投放到Android Market上。這些開發者本能夠在設計時將簡單完善的輔助功能整合到應用中,他們失去了讓應用表現差別化的良好機遇。輔助功能對用戶和開發者都有所幫助,前者可能須要這些功能來使用應用,後者須要更多用戶下載並使用他們的應用。工具
Android SDK中有許多功能爲應用輔助性提供支持。除輔助功能基本包以外,還有些小輔助功能散佈於廣泛使用的SDK之中。在下文中,咱們將分析Android SDK設計和構建具備高度輔助性應用的主要功能,如下這些方法使用難度遞增。佈局
一、View中的內容描述設計
提升應用輔助性最簡單的方法是在用戶界面的每一個View控制中提供內容描述。這些信息能夠爲屏幕閱讀器等輔助服務和工具所使用,幫助弱視用戶使用應用用戶界面。在XML中,該屬性稱爲android:contentDescription,相關View類型方法爲setContentDescription。好比,若是你在ImageView控制中有張大猩猩的圖片,你能夠設置內容來描述這張圖片。一樣,若是屏幕上有多個Button控制,你能夠用簡短的內容描述各個控制的做用進行區分。遊戲
二、Haptic反饋功能事件
正如Android SDK程序說明書中的形象描述,Haptic反饋指你點擊設備觸摸屏上的控制時感受到的小震動。View控制有某些內置Haptic反饋功能。可是,你能夠輕易撇開默認的震動行爲,自行爲其餘事件設置Haptic反饋功能。控制能夠有Haptic功能,也能夠沒有,事件由開發者來決定。查看View控制屬性以及與Haptic反饋相關方法,瞭解更多細節。圖片
三、Text-to-Speech服務ip
Text-to-Speech(遊戲邦注:下文簡稱「TTS」)服務可識別文字數據,讓設備以計算機的「聲音」大聲「讀出」內容。導航應用等免持應用常常用這項技術來提示司機,弱視用戶也能夠用此類型的服務來理解屏幕上的文字。Android SDK中可用的TTS功能在android.speech.tts包中,能夠很是容易地將TTS嵌入到應用中。開發
四、語音識別服務
簡單地說,語音識別服務正好與TTS相反,識別用戶輸入的聲音並將其轉化成爲文本數據。這項服務常常用於搜索應用和聯繫管理應用中,設備會對「Call Mom」等特定指令作出迴應。Android SDK中可用的語音識別功能在android.speech包中,使用android.speech.RecognizerIntent方式就能夠爲應用添加這項服務。該方式可用來開啓內置錄音應用,將識別的文字結果反饋給你的應用。
五、替代性輸入方式
某些Android設備有方向鍵、軌跡球或箭頭鍵之類的方向控制器。弱視用戶偏心這些類型的設備,它們能夠系統地導航用戶選擇屏幕上的各個組件。確保應用支持這些輸入方式。必須特別關注得到用戶關注的佈局中View控制的命令。你能夠在使用android:nextFocus*屬性的佈局中跳過View控制的關注命令。
六、若是使用傳統Views,確保它們可以恰當傳達輔助事件
Android平臺上有着大量系統服務,確保平臺可以穩定流暢地運行。輔助服務就是此類服務之一。當Button控制之類的內置View控制被點擊後,它傳達的輔助服務是「我已經被點擊了!」。若是你使用傳統的View控制,就有責任向輔助服務恰當傳達事件。爲實現這個目標,你的傳統View控制必須使用AccessibilityEventSource界面,來傳達AccessibilityEvent事件。
七、使用本身的輔助技術
若是你有本身的輔助技術,就須要鏈接至全部的輔助事件。這能夠經過執行你本身的AccessibilityService來實現,AccessibilityEvent動做被觸發後,Android Service會收到信息。這項服務能夠接收各類不一樣的事件,對提供某些類型的輔助組件頗有幫助。這些事件包括用戶點擊View、控制注意力發生改變或物體上的文字發生改變等。若是使用本身的控制,必須確保能施行同種類型的事件。
總結
Android SDK的輔助功能健全、佔容量少並且易於使用,多數人都會選擇。在設計時忽略應用的輔助性會限制你的潛在用戶數量,疏遠某些用戶羣體實非明智之舉。應用支持輔助功能的程度與目標用戶和項目目標有關。只需一些小更新,全部應用均可以有效改善它們的輔助性。