2017-12-04 12 views
-3

私はスプラッシュ画面に2つのボタンがあり、アプリのインストールがあるかどうかを確認し、アプリをインストールするとボタンが起動し、他のボタンは無効になっています。クリックして、アプリがボタンをインストールしない場合は、無効にしてボタンをインストールしてダウンロードしています。アプリがインストールされていない場合、ボタンを無効にする

final Button down_install = (Button) findViewById(R.id.bt_down_install); 
     final Button start = (Button) findViewById(R.id.bt_start); 
     start.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
        boolean isAppInstalled = appInstalledOrNot("com.facebook.android"); 
        if (isAppInstalled) { 
         Intent Start_screen = new Intent(SplashScreen.this, MainActivity.class); 
         startActivity(Start_screen); 

        } else { 

         start.setEnabled(false); 


       } 

      } 

      private boolean appInstalledOrNot(String uri) { 
       PackageManager pm = getPackageManager(); 
       try { 
        pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); 
        return true; 
       } catch (PackageManager.NameNotFoundException e) { 
       } 

       return false; 


      } 
     }); 
+4

可能な重複し、[アプリケーションはAndroidの内に設置されているかどうか、プログラムをチェックするには?](https://stackoverflow.com/questions/11392183/how-to-check-programmatically-if-an-アプリケーションがインストールされているか、またはアンドロイドではない) – ADM

答えて

0
if (isAppInstalled) { 
    Intent Start_screen = new Intent(SplashScreen.this, MainActivity.class); 
    startActivity(Start_screen); 
} else { 
    //start.setEnabled(false); 
    start.setOnClickListener(null); 
} 
0

試み{あなたが getPackageManagerを(確認したいアプリの //使用パッケージ名)getPackageInfo( "com.example.helloworld"、PackageManager.GET_ACTIVITIES)。

} catch (PackageManager.NameNotFoundException e) { 
    } 
関連する問題