我想知道用户何时安装新应用。我使用过广播接收器。
<receiver android:name=".NewInstallReceiver">
<intent-filter>
<action android:name="android.intent.action.package_added" />
<data android:scheme="package" />
</intent-filter>
</receiver>
代码:
public class NewInstallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String act = intent.getAction();
Log.e("ee", "new install" + intent);
if (Intent.ACTION_PACKAGE_ADDED.equals(act) || Intent.ACTION_PACKAGE_REMOVED.equals(act)) {
/* ContentResolver contentResolver = context.getContentResolver();
contentResolver.query()*/
}
}
}
我从playstore安装应用程序时看不到任何日志。
我应该使用服务吗?如果是,那我怎么能让它运行无限次?
答案 0 :(得分:2)
我猜你的意图过滤器中有拼写错误,请尝试下面的意图过滤器
<receiver android:name=".NewInstallReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<action android:name="android.intent.action.PACKAGE_INSTALL"/>
<data android:scheme="package" />
</intent-filter>
</receiver>