The NoteBook of EricKong

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            611 Posts :: 1 Stories :: 190 Comments :: 0 Trackbacks

          1.震動

          先說簡單的,震動提示

          第一步,在AndroidManifest.xml 里聲明權限

           <uses-permissionandroid:name="android.permission.VIBRATE"/>

          第二步,獲得震動服務并啟動

           Vibrator vibrator = (Vibrator)activity.getSystemService(Context.VIBRATOR_SERVICE);

          vibrator.vibrate(newlong[]{300,500},0);

          經過以上兩步,就啟動震動了。上述代碼直接在程序中調用就可以了,這個是比較簡單的,比大象放冰箱要少一步。Vibrate()的參數網上能查到,看看就知道了。

          2.提示鈴聲

          第一步,1.準備一個音頻文件比如:beep.ogg。先把音頻文件導入到res/raw文件夾下,需要注意的是這個文件下的文件名必須是小寫,之后導入即可。

          第二步,為activity注冊的默認音頻通道。這個一般在onCreate()函數中注冊即可。

           activity.setVolumeControlStream(AudioManager.STREAM_MUSIC);

          第三步,檢查當前情景模式,確定不要是靜音。

          第四步,初始化MediaPlayer對象,指定播放的聲音通道為 STREAM_MUSIC,這和上面的步驟一致,指向了同一個通道。

           MediaPlayer mediaPlayer = new MediaPlayer();//這個我定義了一個成員函數

           mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

          第五步,注冊事件。當播放完畢一次后,重新指向流文件的開頭,以準備下次播放。

           mediaPlayer .setOnCompletionListener(newMediaPlayer.OnCompletionListener() {

                  @Override

          public voidonCompletion(MediaPlayer player) {

                  player.seekTo(0);

                  }

           });

          第六步,設定數據源,并準備播放

          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();

           

          經過以上幾步,就可以實現手機的鈴聲了。

          posted on 2014-11-25 13:38 Eric_jiang 閱讀(1299) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 西城区| 永胜县| 镇沅| 呼伦贝尔市| 太康县| 和顺县| 梁河县| 承德市| 苍溪县| 囊谦县| 蓝田县| 甘肃省| 浮梁县| 宣城市| 阿巴嘎旗| 神池县| 灵寿县| 开远市| 上蔡县| 克什克腾旗| 明溪县| 富蕴县| 蒲江县| 灵璧县| 会宁县| 同仁县| 开封市| 苗栗县| 凤台县| 云南省| 北京市| 滁州市| 蒙山县| 综艺| 化德县| 新沂市| 诸暨市| 萝北县| 滨州市| 桂东县| 晋江市|