Używam https://stackoverflow.com/a/14353076/1327384, aby zaktualizować mój program na Androida, ale po aktualizacji mojego programu będzie zamknięty, więc chcę go ponownie otworzyć po zakończeniu procesu aktualizacji, jak mogę to zrobić?Otwórz mój program Android po aktualizacji
użyłem tej klasy
package services;
public class PackageChangeReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context ctx, Intent intent) {
Uri data = intent.getData();
boolean replacing = intent.getBooleanExtra(Intent.EXTRA_REPLACING, false);
Intent intent1 = new Intent(ctx, service.class);
ctx.startService(intent1);
Log.d("service", "Action: " + intent.getAction());
Log.d("service", "The DATA: " + data);
}
}
i to mainfest
<receiver android:name="services.PackageChangeReceiver" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
ale nadal odbierać zamiar po I uruchomić aplikację ręcznie
co pan myśli o lepkiej usługi –
2forshubi: Miałem na myśli to: http://developer.android.com/reference/android/app/Service.html#START_STICKY –
staram android.intent.action.PACKAGE_REPLACED. ale działa po tym, jak otwieram program, więc chcę, żeby to działało wcześniej, jak mogę to zrobić? –