2014-11-21 1 views
0

Этот код для msg somethone om Skype, но я не знаю, как установить https://play.google.com/store/apps/details?id=com.skype.raider на случай, если у меня не было Skype.Как я могу играть. Skype для Skype?

skypename.setOnClickListener(new OnClickListener() { 
        @Override 
        public void onClick(View v) { 
         Uri skypeUri = Uri.parse("skype:username?chat"); 
         Intent myIntent = new Intent(Intent.ACTION_VIEW, skypeUri); 
         myIntent.setComponent(new ComponentName("com.skype.raider", "com.skype.raider.Main")); 
         myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
         startActivity(myIntent); 
         } 
        }); 

Код добавлен ......................................... .................................................. ........

skypename.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if (!isSkypeClientInstalled(activity)) { 
     Context activity; 
     goToMarket(activity); 
     return; 
    } else{ 
     Uri skypeUri = Uri.parse("skype:username?chat"); 
     Intent myIntent = new Intent(Intent.ACTION_VIEW, skypeUri); 
     myIntent.setComponent(new ComponentName("com.skype.raider", "com.skype.raider.Main")); 
     myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(myIntent); 
     } 

public void goToMarket(Context myContext) { 
    Activity activity; 
    try { 
     activity.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + "com.skype.raider"))); 
        } catch (android.content.ActivityNotFoundException anfe) { 
         activity. startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + "com.skype.raider"))); 
        } 
         return; 
        } 
       public boolean isSkypeClientInstalled(Context myContext) { 
         PackageManager myPackageMgr = myContext.getPackageManager(); 
         try { 
         myPackageMgr.getPackageInfo("com.skype.raider", PackageManager.GET_ACTIVITIES); 
         } 
         catch (PackageManager.NameNotFoundException e) { 
         return (false); 
         } 
         return (true); 
        }); 

ответ

1

Сначала вы проверить скайп уже установлен или не использовать этот код .if insalled тзд something.else перейти к Google Play, чтобы загрузить Скайп

skypename.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if (!isSkypeClientInstalled(MainActivity.this)) { 

       goToMarket(MainActivity.this); 
       return; 
      } else{ 
       Uri skypeUri = Uri.parse("skype:username?chat"); 
       Intent myIntent = new Intent(Intent.ACTION_VIEW, skypeUri); 
       myIntent.setComponent(new ComponentName("com.skype.raider", "com.skype.raider.Main")); 
       myIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       startActivity(myIntent); 
       } 
      } 
       }); 

public void goToMarket(Context myContext) { 

    try { 
     activity.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + "com.skype.raider"))); 
    } catch (android.content.ActivityNotFoundException anfe) { 
     activity. startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + "com.skype.raider"))); 
    } 

     return; 
    } 
public boolean isSkypeClientInstalled(Context myContext) { 
     PackageManager myPackageMgr = myContext.getPackageManager(); 
     try { 
     myPackageMgr.getPackageInfo("com.skype.raider", PackageManager.GET_ACTIVITIES); 
     } 
     catch (PackageManager.NameNotFoundException e) { 
     return (false); 
     } 
     return (true); 
    } 
+0

Здравствуйте, prajeesh .. Он был установлен в первый раз, когда я мог отправить сообщение об этом имени пользователя, затем я удалил Skype, и у меня есть ошибка, поэтому у меня есть Skype, ваш код не показывает никаких имя пользователя:/ – Tina

+0

Хорошо, так как он был изменен сейчас, я добавил его, но у меня проблема с 2} и 1) ... можете ли вы рассказать мне, что это такое? Кодированный добавлен сверху – Tina

+0

prajeesh - это дает мне ту же ошибку, проблема в том, что я добавил то, что вы закодировали другому, как видите в верхней части – Tina

0

Привет Tina Пожалуйста, проверьте ниже код его работы.

Если не установлено скайп на устройстве, откройте google play, иначе откроется skype.

Button button = (Button) findViewById(R.id.button1); 
     button.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       try { 
        if (appInstalledOrNot("com.skype.raider")) { 
         Intent sky = new Intent("android.intent.action.VIEW"); 
         sky.setData(Uri.parse("skype:" + "")); 
         startActivity(sky); 
        } else { 
         Intent i = new Intent(
           android.content.Intent.ACTION_VIEW); 
         i.setData(Uri 
           .parse("https://play.google.com/store/apps/details?id=com.skype.raider")); 
         startActivity(i); 
        } 
       } catch (Exception e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 
      } 
     }); 
    } 

    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; 
    }