亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Android Accessibility 輔助功能簡(jiǎn)單介紹

 更新時(shí)間:2016年11月22日 15:04:40   投稿:lqh  
這篇文章主要介紹了Android Accessibility 輔助功能簡(jiǎn)單介紹的相關(guān)資料,文字轉(zhuǎn)語音,觸覺反饋,手勢(shì)操作,軌跡球和手柄操作,需要的朋友可以參考下

Android Accessibility 輔助功能

Accessibility:

許多Android使用者因?yàn)楦鞣N情況導(dǎo)致他們要以不同的方式與手機(jī)交互。

這包括了有些用戶由于視力上,身體上,年齡上的問題致使他們不能看完整的屏幕或者使用觸屏,也包括了無法很好接收到語音信息和提示的聽力能力比較弱的用戶。

Android提供了Accessibility功能和服務(wù)幫助這些用戶更加簡(jiǎn)單地操作設(shè)備,包括文字轉(zhuǎn)語音(這個(gè)不支持中文),觸覺反饋,手勢(shì)操作,軌跡球和手柄操作。

開發(fā)者可以利用這些服務(wù)使得程序更好用。

開發(fā)者可以搭建自己的Accessibility服務(wù),這可以加強(qiáng)可用性,例如聲音提示,物理反饋,和其他可選的操作模式。

Accessibility服務(wù)可以為所有的應(yīng)用程,一組應(yīng)用程序或單個(gè)應(yīng)用程序提供這些增強(qiáng)功能。

官方文檔中,有三篇文章介紹了Accessibility,這里只要是第三篇關(guān)于AccessibilityService的使用:

AccessibilityService使用很簡(jiǎn)單:

1. 新建一個(gè)類繼承AccessibilityService,并在AndroidManifest文件里注冊(cè)它:

<application> 
 <service android:name=".MyAccessibilityService" 
   android:label="@string/accessibility_service_label"> 
  <intent-filter> 
   <action android:name="android.accessibilityservice.AccessibilityService" /> 
  </intent-filter> 
 </service> 
 <uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" /> 
</application> 

在<application>標(biāo)簽下添加繼承了AccessibilityService的子類MyAccessibilityService,同時(shí)加入相應(yīng)的權(quán)限。

2. 在子類MyAccessibilityService里實(shí)現(xiàn)幾個(gè)重要的重載方法:

onServiceConnected() - 可選。系統(tǒng)會(huì)在成功連接上你的服務(wù)的時(shí)候調(diào)用這個(gè)方法,在這個(gè)方法里你可以做一下初始化工作,例如設(shè)備的聲音震動(dòng)管理,也可以調(diào)用setServiceInfo()進(jìn)行配置工作。

onAccessibilityEvent() - 必須。通過這個(gè)函數(shù)可以接收系統(tǒng)發(fā)送來的AccessibilityEvent,接收來的AccessibilityEvent是經(jīng)過過濾的,過濾是在配置工作時(shí)設(shè)置的。

onInterrupt() - 必須。這個(gè)在系統(tǒng)想要中斷AccessibilityService返給的響應(yīng)時(shí)會(huì)調(diào)用。在整個(gè)生命周期里會(huì)被調(diào)用多次。
onUnbind() - 可選。在系統(tǒng)將要關(guān)閉這個(gè)AccessibilityService會(huì)被調(diào)用。在這個(gè)方法中進(jìn)行一些釋放資源的工作。

3. 配置工作

一般在onServiceConnected()方法里進(jìn)行。/Android-Sample/ApiDemos/com.example.android.apis.accessibility.ClockBackService 配置代碼:

private void setServiceInfo(int feedbackType) { 
  AccessibilityServiceInfo info = new AccessibilityServiceInfo(); 
  // We are interested in all types of accessibility events. 
  info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK; 
  // We want to provide specific type of feedback. 
  info.feedbackType = feedbackType; 
  // We want to receive events in a certain interval. 
  info.notificationTimeout = EVENT_NOTIFICATION_TIMEOUT_MILLIS; 
  // We want to receive accessibility events only from certain packages. 
  info.packageNames = PACKAGE_NAMES; 
  setServiceInfo(info); 
} 

需要建立一個(gè)AccessibilityServiceInfo對(duì)象,通過這個(gè)對(duì)象設(shè)置監(jiān)聽系統(tǒng)事件類型,服務(wù)的反饋類型(震動(dòng),語音,聲音),事件時(shí)間間隔,你想要監(jiān)聽的包名(或者說是應(yīng)用程序)。最后調(diào)用setServiceInfo()進(jìn)行設(shè)置。

注:從Android4.0開始,開發(fā)者可以通過在AndroidManifest里添加<meta-data>標(biāo)簽,在標(biāo)簽里指出配置文件的位置,樣例代碼:

<service android:name=".MyAccessibilityService"> 
 ... 
 <meta-data 
  android:name="android.accessibilityservice" 
  android:resource="@xml/accessibility_service_config" /> 
</service> 

然后在/res/xml/accessibility_service_config.xml

<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android" 
  android:description="@string/accessibility_service_description" 
  android:packageNames="com.example.android.apis" 
  android:accessibilityEventTypes="typeAllMask" 
  android:accessibilityFlags="flagDefault" 
  android:accessibilityFeedbackType="feedbackSpoken" 
  android:notificationTimeout="100" 
  android:canRetrieveWindowContent="true" 
  android:settingsActivity="com.example.android.accessibility.ServiceSettingsActivity" 
/> 

更多詳細(xì)的可以參見官方文檔,或者可以看samples里的兩個(gè)例子:ClockBackService, TaskBackService。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Flutter 全局點(diǎn)擊空白處隱藏鍵盤實(shí)戰(zhàn)

    Flutter 全局點(diǎn)擊空白處隱藏鍵盤實(shí)戰(zhàn)

    這篇文章主要介紹了Flutter 全局點(diǎn)擊空白處隱藏鍵盤實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Android自定義View仿騰訊TIM下拉刷新View

    Android自定義View仿騰訊TIM下拉刷新View

    這篇文章主要給大家介紹了關(guān)于Android自定義View仿騰訊TIM下拉刷新View的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • OpenGL ES正交投影實(shí)現(xiàn)方法(三)

    OpenGL ES正交投影實(shí)現(xiàn)方法(三)

    這篇文章主要為大家詳細(xì)介紹了OpenGL ES正交投影的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • Android中使用PagerSlidingTabStrip實(shí)現(xiàn)導(dǎo)航標(biāo)題的示例

    Android中使用PagerSlidingTabStrip實(shí)現(xiàn)導(dǎo)航標(biāo)題的示例

    本篇文章主要介紹了Android中使用PagerSlidingTabStrip實(shí)現(xiàn)導(dǎo)航標(biāo)題的示例,具有一定的參考價(jià)值,有興趣的可以了解一下。
    2017-01-01
  • Android實(shí)現(xiàn)消息提醒小紅點(diǎn)效果

    Android實(shí)現(xiàn)消息提醒小紅點(diǎn)效果

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)消息提醒小紅點(diǎn)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Android AOP框架AspectJ使用詳解

    Android AOP框架AspectJ使用詳解

    本篇文章主要介紹了Android AOP框架AspectJ使用詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • Android編程自定義View時(shí)添加自己的監(jiān)聽器示例

    Android編程自定義View時(shí)添加自己的監(jiān)聽器示例

    這篇文章主要介紹了Android編程自定義View時(shí)添加自己的監(jiān)聽器,涉及Android自定義view中監(jiān)聽器的添加、設(shè)置與使用相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • Android自定義仿ios加載彈窗

    Android自定義仿ios加載彈窗

    這篇文章主要為大家詳細(xì)介紹了Android自定義仿ios加載彈窗,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • Android采用消息推送實(shí)現(xiàn)類似微信視頻接聽

    Android采用消息推送實(shí)現(xiàn)類似微信視頻接聽

    這篇文章主要為大家詳細(xì)介紹了Android采用消息推送實(shí)現(xiàn)類似微信視頻接聽,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • Android中EditText的drawableRight屬性設(shè)置點(diǎn)擊事件

    Android中EditText的drawableRight屬性設(shè)置點(diǎn)擊事件

    這篇文章主要介紹了Android中EditText的drawableRight屬性的圖片設(shè)置點(diǎn)擊事件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10

最新評(píng)論