Android ApiDemos樣本解析(89):OS->Morse Code

來源:互聯網
上載者:User

本例介紹了OS中的Vibrator (震動)的用法,類MorseCodeConverter 提供了將字母數字到 Morse code 轉換:

 

比如:/* A */ new long[] { DOT, GAP, DASH }  分別對應Dot , Gap, Dash

DOT,GAP ,DASH 對應的時間定義為:


[java] 
private static final long SPEED_BASE = 100; 
static final long DOT = SPEED_BASE; 
static final long DASH = SPEED_BASE * 3; 
static final long GAP = SPEED_BASE; 
static final long LETTER_GAP = SPEED_BASE * 3; 
static final long WORD_GAP = SPEED_BASE * 7; 

private static final long SPEED_BASE = 100;
static final long DOT = SPEED_BASE;
static final long DASH = SPEED_BASE * 3;
static final long GAP = SPEED_BASE;
static final long LETTER_GAP = SPEED_BASE * 3;
static final long WORD_GAP = SPEED_BASE * 7;有了這個轉換表,就可以使用vibrator 利用震動發送Morse code.


[java] 
long[] pattern = MorseCodeConverter.pattern(text); 
  
// Start the vibration  
Vibrator vibrator 
 = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE); 
vibrator.vibrate(pattern, -1); 

long[] pattern = MorseCodeConverter.pattern(text);
 
// Start the vibration
Vibrator vibrator
 = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(pattern, -1);
public void vibrate(long[] pattern, int repeat) 可以讓裝置以指定的模式來震動手機。repeat 為重複的次數,-1表示不重複。

此外Vibrator 還提供了public void vibrate(long milliseconds) 可以使手機震動給定時間。

 
作者:mapdigit
 

 

 

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.