Как я могу установить apk автоматически, когда SDCard поставлен? - PullRequest
5 голосов
/ 03 марта 2012

Понятия не имею. Как я могу установить apk автоматически при установке sdcard?

Однако у меня возникла проблема: когда я регистрирую получателя, который слушал ACTION_MEDIA_SHARED, в AndroidManifest.xml Em ... я создаю приемник, который расширяет BroadcastReceive, я переопределяю OnReceive(). Но, наконец, получатель не может получить никакого действия. Вот мой код Срыв !!!!!

<receiver android:name=".SdcardPutOnListener"
    android:exported="true">

    <intent-filter>
        <action android:name="android.intent.action.ACTION_MEDIA_BAD_REMOVAL" />
        <action android:name="android.intent.action.ACTION_MEDIA_MEDIA_CHECKING" />
        <action android:name="android.intent.action.ACTION_MEDIA_EJECT" />
        <action android:name="android.intent.action.ACTION_MEDIA_MOUNTED" />
        <action android:name="android.intent.action.ACTION_MEDIA_NOFS" />
        <action android:name="android.intent.action.ACTION_MEDIA_REMOVED" />
        <action android:name="android.intent.action.ACTION_MEDIA_SHARED" />
        <action android:name="android.intent.action.ACTION_MEDIA_UNMOUNTABLE" />
        <data android:scheme="file" /> 
        <category android:name="android.intent.category.HOME"/>
    </intent-filter>
</receiver>

public class SdcardPutOnListener extends BroadcastReceiver {
    final static String TAG = "SdcardPutOnListener";
    public void onReceive(Context context, Intent intent) {
        Log.i(TAG, "receive broadcast " + intent.getAction()); 
    }
}

1 Ответ

3 голосов
/ 03 марта 2012

Вы можете создать приложение, которое наблюдает за трансляцией ACTION_MEDIA_MOUNTED, затем просматривает внешнее хранилище в известном месте для файла APK, затем вызывает startActivity() с ACTION_VIEW Intent на пути кэтот файл APK с правильным типом MIME (application/vnd.android.package-archive).

Если вы ожидаете, что он будет встроен в операционную систему, это не так.

...