1.震動(dòng)
先說簡(jiǎn)單的,震動(dòng)提示
第一步,在AndroidManifest.xml 里聲明權(quán)限
<uses-permissionandroid:name="android.permission.VIBRATE"/>
第二步,獲得震動(dòng)服務(wù)并啟動(dòng)
Vibrator vibrator = (Vibrator)activity.getSystemService(Context.VIBRATOR_SERVICE);
vibrator.vibrate(newlong[]{300,500},0);
經(jīng)過以上兩步,就啟動(dòng)震動(dòng)了。上述代碼直接在程序中調(diào)用就可以了,這個(gè)是比較簡(jiǎn)單的,比大象放冰箱要少一步。Vibrate()的參數(shù)網(wǎng)上能查到,看看就知道了。
2.提示鈴聲
第一步,1.準(zhǔn)備一個(gè)音頻文件比如:beep.ogg。先把音頻文件導(dǎo)入到res/raw文件夾下,需要注意的是這個(gè)文件下的文件名必須是小寫,之后導(dǎo)入即可。
第二步,為activity注冊(cè)的默認(rèn)音頻通道。這個(gè)一般在onCreate()函數(shù)中注冊(cè)即可。
activity.setVolumeControlStream(AudioManager.STREAM_MUSIC);
第三步,檢查當(dāng)前情景模式,確定不要是靜音。
第四步,初始化MediaPlayer對(duì)象,指定播放的聲音通道為 STREAM_MUSIC,這和上面的步驟一致,指向了同一個(gè)通道。
MediaPlayer mediaPlayer = new MediaPlayer();//這個(gè)我定義了一個(gè)成員函數(shù)
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
第五步,注冊(cè)事件。當(dāng)播放完畢一次后,重新指向流文件的開頭,以準(zhǔn)備下次播放。
mediaPlayer .setOnCompletionListener(newMediaPlayer.OnCompletionListener() {
@Override
public voidonCompletion(MediaPlayer player) {
player.seekTo(0);
}
});
第六步,設(shè)定數(shù)據(jù)源,并準(zhǔn)備播放
AssetFileDescriptor file =activity.getResources().openRawResourceFd(
R.raw.beep);
try{
mediaPlayer.setDataSource(file.getFileDescriptor(),
file.getStartOffset(), file.getLength());
file.close();
mediaPlayer.setVolume(BEEP_VOLUME,BEEP_VOLUME);
mediaPlayer.prepare();
}catch (IOException ioe) {
Log.w(TAG, ioe);
mediaPlayer = null;
}
第七步,開始播放
mediaPlayer.start();
經(jīng)過以上幾步,就可以實(shí)現(xiàn)手機(jī)的鈴聲了。