監聽SDCard安裝和卸載的Android代碼

jopen 9年前發布 | 1K 次閱讀 Java Android

// 監聽類
private final BroadcastReceiver sdcardListener = new BroadcastReceiver() {

    @Override
    public void onReceive(Context context, Intent intent) {

        String action = intent.getAction();
        Log.d("TAG", "sdcard action:::::" + action);
        if(Intent.ACTION_MEDIA_MOUNTED.equals(action)
                || Intent.ACTION_MEDIA_SCANNER_STARTED.equals(action)
                || Intent.ACTION_MEDIA_SCANNER_FINISHED.equals(action)
                ){
            // SD卡成功掛載

        } else if(Intent.ACTION_MEDIA_REMOVED.equals(action)
                || Intent.ACTION_MEDIA_UNMOUNTED.equals(action)
                || Intent.ACTION_MEDIA_BAD_REMOVAL.equals(action)
                ){
            // SD卡掛載失敗

        }

    }
};

    // 注冊監聽
private void registerSDCardListener(){
    IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MEDIA_MOUNTED);
    intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_STARTED);
    intentFilter.addAction(Intent.ACTION_MEDIA_SCANNER_FINISHED);
    intentFilter.addAction(Intent.ACTION_MEDIA_REMOVED);
    intentFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
    intentFilter.addAction(Intent.ACTION_MEDIA_BAD_REMOVAL);
    intentFilter.addDataScheme("file");
    registerReceiver(sdcardListener, intentFilter);
}</pre> 


 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!