我有一个与会员系统兼容的Android移动应用程序。在我的应用程序中有指向其他移动应用程序和游戏的链接。使用Packet Manager,我可以检查链接中的应用程序是否已安装在电话上。我的目标是通过单击应用程序中的链接来检查用户是否已在设备上下载了游戏和移动应用程序。如果他们一次(第一次)在给定的链接中下载了该应用程序,则将获得10分。如果他们多次下载同一应用程序,则将被视为一次。我想问你,如果用户下载一个应用程序不止一次,我怎么只算一次呢?
private boolean appInstalledOrNot(String uri) {
PackageManager pm = getPackageManager();
boolean app_installed = false;
try {
pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES);
app_installed = true;
} catch (PackageManager.NameNotFoundException e) {
app_installed = false;
}
return app_installed;
}
public void go(View view) {
boolean installed = appInstalledOrNot("com.dousoftware.pubgtyolar");
//loaded
if (installed) {
Toast.makeText(this, "Loaded", Toast.LENGTH_SHORT).show();
} else {
Intent viewIntent = new Intent("android.intent.action.VIEW",
Uri.parse("https://play.google.com/store/apps/details?
id = com.dousoftware.pubgtyolar "));
startActivity(viewIntent); Toast.makeText(this, "Not Loaded", Toast.LENGTH_SHORT).show();
}
}
如果用户单击链接
仅在某处保存已使用链接的信息
简短的答案是:您不能。