How to check programmatically if an application is installed or not in Android?

Try with this: public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Add respective layout setContentView(R.layout.main_activity); // Use package name which we want to check boolean isAppInstalled = appInstalledOrNot(“com.check.application”); if(isAppInstalled) { //This intent will help you to launch if the package is already installed Intent LaunchIntent = getPackageManager() .getLaunchIntentForPackage(“com.check.application”); startActivity(LaunchIntent); … Read more

The apk must be signed with the same certificates as the previous version

Nothing. Read the documentation: Publishing Updates on Android Market Before uploading the updated application, be sure that you have incremented the android:versionCode and android:versionName attributes in the element of the manifest file. Also, the package name must be the same and the .apk must be signed with the same private key. If the package name … Read more

Install Application programmatically on Android

You can easily launch a market link or an install prompt: Intent promptInstall = new Intent(Intent.ACTION_VIEW) .setDataAndType(Uri.parse(“file:///path/to/your.apk”), “application/vnd.android.package-archive”); startActivity(promptInstall); source Intent goToMarket = new Intent(Intent.ACTION_VIEW) .setData(Uri.parse(“market://details?id=com.package.name”)); startActivity(goToMarket); source However, you cannot install .apks without user’s explicit permission; not unless the device and your program is rooted.