Редактировать: Удалось решить проблему. Создал новый проект, очистил данные приложения перед его удалением, переустановил его и волшебным образом работал. Спасибо за помощь.Обнаружение установки приложения
Я пытаюсь обнаружить, когда приложение установлено, но я не совсем уверен, где я ошибаюсь. Я проверил несколько вопросов здесь, но я просто не могу понять это. Я довольно новичок в андроиде, поэтому я, возможно, пропустил что-то очевидное. Вот тестовый пример того, что у меня есть.
Я установил его на свой телефон, и процесс и служба отображаются как работающие в настройках. Затем я загружаю приложение из магазина воспроизведения, проверяю лог-код, и в приложении ничего нет.
Любая помощь в том, где я ошибаюсь? Благодарю.
Edit:
После игры с ним еще немного, у меня есть новый пример тестового кода. Когда новый пакет установлен, метод onReceive не запускается. Однако, когда я тестировал, я добавил конструктор в класс BroadcastReceiver, и конструктор запускается каждый раз, когда установлен пакет. Таким образом, кажется, что он получает намерение, но журнал внутри onReceive никогда не распечатывается. Есть идеи?
public class InstallReceiver extends BroadcastReceiver {
public InstallReceiver()
{
//This log will display in the logcat
Log.d("InstallReceiver", "InstallReceiver constructor called.");
}
@Override
public void onReceive(Context context, Intent intent) {
//This log never displays if the constructor is in or commented out
Log.d("InstallReceiver", "Install detected.");
}
}
<receiver android:name=".InstallReceiver">
<intent-filter >
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_CHANGED" />
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<action android:name="android.intent.action.PACKAGE_REPLACED" />
<data android:scheme="package" />
</intent-filter>
</receiver>
Если только Я неправильно понимаю документацию, вот она: http://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_ADDED – Lucas