Android намерение для SDCard готов - PullRequest
18 голосов
/ 05 августа 2010

У меня есть приложение, которое использует файл на SD-карте, приложение запускается при загрузке телефона, и стало очевидно, что файл не доступен при первом запуске программы, поскольку он начинает работать до того, как SD-карта будет доступна. ,

Есть ли приемник вещания, который я могу использовать, чтобы узнать, когда SD-карта готова?

Обновление

Просто чтобы подвести итог ответа для регистрации намерения сделайте:

IntentFilter filter = new IntentFilter (Intent.ACTION_MEDIA_MOUNTED); 
filter.addDataScheme("file"); 
registerReceiver(this.mSDInfoReceiver, new IntentFilter(filter));

и создайте широковещательный приемник, чтобы реагировать на него:

private BroadcastReceiver mSDInfoReceiver = new BroadcastReceiver(){
    @Override
    public void onReceive(Context arg0, Intent intent) {
    // Code to react to SD mounted goes here
    }
 }; 

1 Ответ

18 голосов
/ 05 августа 2010

Lookup ACTION_MEDIA_MOUNTED широковещательное действие на Intent

public static final String ACTION_MEDIA_MOUNTED

Since: API Level 1
Broadcast Action: External media is present and mounted at its mount point. The path to the mount point for the removed media is contained in the Intent.mData field. The Intent contains an extra with name "read-only" and Boolean value to indicate if the media was mounted read only.
Constant Value: "android.intent.action.MEDIA_MOUNTED"
...