- 我正在开发应用程序,该应用程序需要在应用程序安装时执行 Web 服务,并且只执行一次。
- 目前我为此使用了共享首选项,但是如果用户清除应用程序数据,那么它会丢失共享首选项值,并且我的代码会破坏该应用程序是新创建的,并且我的代码会进一步执行 Web 服务。
- 所以我需要广播我自己的应用程序安装事件的解决方案。
- 我还为此创建了广播,但仅在安装其他应用程序时才广播。
我使用的这段代码...
检查状态
private void checkAppStatus() {
boolean isOpen = AppMethod.getBooleanPreference(MainActivity.this, AppConstant.PREF_IS_OPEN);
if (!isOpen) {
executeWS();
}
}
播送
public class AppInfoReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.e("My App", "Install");
}
}
显现
<receiver android:name=".receiver.AppInfoReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_INSTALL" />
<action android:name="android.intent.action.PACKAGE_ADDED" />
<action android:name="android.intent.action.PACKAGE_REMOVED" />
<data android:scheme="package" />
</intent-filter>
</receiver>