2013-05-16 10 views

Odpowiedz

7

Można to wykorzystać, aby sprawdzić, czy jest zainstalowana aplikacja oficjalny Twitter:

PackageManager pkManager = activity.getPackageManager(); 
try { 
    PackageInfo pkgInfo = pkManager.getPackageInfo("com.twitter.android", 0); 
    String getPkgInfo = pkgInfo.toString(); 

    if (getPkgInfo.equals("com.twitter.android")) { 
     // APP NOT INSTALLED 
    } 
} catch (NameNotFoundException e) { 
    e.printStackTrace(); 

    // APP NOT INSTALLED 

} 

jednak, nawet jeśli jest zainstalowany, nie będzie można pobrać z niego żadnych poświadczeń do użytku w ramach własnej aplikacji. Będziesz musiał Twitter4J library zarządzać uwierzytelnianiem użytkownika w swojej własnej aplikacji. Wyciąganie danych z aplikacji, jeśli zostało zainstalowane, to tylko , a nie opcja.

+0

ohk. czy mogę uruchomić tę aplikację do uwierzytelniania? –

+0

@AvinashKumarPankaj: W rzeczywistości uwierzytelnianie będzie wykonywane w przeglądarce. Może to być "WebView" w Twojej aplikacji lub możesz pozwolić użytkownikowi wybrać wybraną przez siebie przeglądarkę (_ spośród tych zainstalowanych na jego urządzeniu_), aby ukończyć proces uwierzytelniania. Jednak w odróżnieniu od jednokrotnego logowania na portalu Facebook aplikacja Twitter nie uczestniczy w tym procesie. –

+0

Bardzo pomocna odpowiedź, moje użycie tego kodu znajduje się w linku poniżej, jeśli jest to przydatne dla każdego: https://github.com/lararufflecoles/KittyCatImageGenerator/blob/master/app/src/main/java/es/rufflecol/lara/ kittycatimagegenerator/MainActivity.java –

2
try{ 
    ApplicationInfo info = getPackageManager(). 
      getApplicationInfo("com.twitter.android", 0); 
    return true; 
} catch(PackageManager.NameNotFoundException e){ 
    return false; 
} 

to sprawdzi, czy jest zainstalowana oficjalna aplikacja dla Twitter lub nie

1
boolean twitterInstalled = false; 

    try{ 
     ApplicationInfo info = getPackageManager(). 
       getApplicationInfo("com.twitter.android", 0); 
     twitterInstalled = true; 
    } catch(PackageManager.NameNotFoundException e){ 
    } 
Powiązane problemy