I use 2 others applications called zxing for barcode and a pdf viewer from my application.
I know how to check if application are used :
And if the package isn't installed, I propose the installation for the user :
private static void showDownloadDialog(final Activity activity,
String stringTitle,
String stringMessage,
String stringButtonYes,
String stringButtonNo) {
AlertDialog.Builder downloadDialog = new AlertDialog.Builder(activity);
downloadDialog.setTitle(stringTitle);
downloadDialog.setMessage(stringMessage);
downloadDialog.setPositiveButton(stringButtonYes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialogInterface, int i) {
Uri uri = Uri.parse("market://search?q=pname:com.google.zxing.client.android");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
activity.startActivity(intent);
}
});
downloadDialog.setNegativeButton(stringButtonNo, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialogInterface, int i) {}
});
downloadDialog.show();
}
I use google play but I deployed my application on google play, amazon app shop and bb world.
How can I modify that code to handle every market according from the source ?
I found that type of code for amazon How to conditionally use vendor-specific APIs for Android apps? (but I didn't find it for bbworld)
For Amazon, I can make a link and I think it is the same : How can I do an Amazon App Store search using an Intent and filter it by developer name?
For Bb10, it seems to be more difficult 1) I didn't find how to know if the app was downloaded from blackberry world 2) it seems that I don't have the same permission