我需要编写Android应用程序(让我们称之为App1),建议用户安装另一个Android应用程序(让我们称之为App2)。如果用户同意安装App2,我需要App1在App2成功安装后立即进行一些操作。组织这个过程的最佳方法是什么?我在考虑定期检查是否安装了App2,但我认为这不是最聪明的方式。
答案 0 :(得分:2)
您可以使用BroadcastReceiver检测到安装了应用程序。
on onCreate:
BroadcastReceiver appInstalledReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (Intent.ACTION_PACKAGE_ADDED.equals(action)) {
Uri data = intent.getData();
String packageName = data.getEncodedSchemeSpecificPart();
// check if packageName is App2
}
}
};
然后在onResume的某处:
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);
intentFilter.addAction(Intent.ACTION_PACKAGE_INSTALL);
intentFilter.addDataScheme("package");
registerReceiver(appInstalledReceiver, intentFilter);