Android 检查用户';s装置

Android 检查用户';s装置,android,Android,在我的项目中,我想将我的应用程序连接到twitter。它将首先检查用户设备上是否存在twitter应用程序,如果是,它将从那里获取凭据,否则此按钮将被禁用 建议我 try{ ApplicationInfo info = getPackageManager(). getApplicationInfo("com.twitter.android", 0 ); return true; } catch( PackageManager.NameNotFoundExc

在我的项目中,我想将我的应用程序连接到twitter。它将首先检查用户设备上是否存在twitter应用程序,如果是,它将从那里获取凭据,否则此按钮将被禁用

建议我

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

这将检查是否安装了
Twitter
的官方应用程序。您可以使用此检查是否安装了官方Twitter应用程序:

boolean twitterInstalled = false;

    try{
        ApplicationInfo info = getPackageManager().
                getApplicationInfo("com.twitter.android", 0 );
        twitterInstalled = true;
    } catch( PackageManager.NameNotFoundException e ){
    }
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

}

但是,即使已安装,您也无法从中提取任何凭据以在自己的应用程序中使用。您需要在自己的应用程序中管理用户身份验证。如果安装了应用程序,则从应用程序中取出数据只是不是一个选项。那么我可以启动该应用程序进行身份验证吗???@AvinashKumarPankaj:事实上,身份验证将在浏览器中完成。它可以是应用程序中的
WebView
,也可以让用户从安装在其设备上的浏览器中选择一个浏览器来完成身份验证过程。但与Facebook SSO不同的是,Twitter应用程序不参与这一过程。非常有用的回应,如果对任何人有用,我使用这段代码的链接如下:@LaraRuffleColes:谢谢。很高兴能帮上忙。我确实访问了GitHub链接,并想提出一个快速建议。我假设的是,不要包含真正的Twitter API密钥和其中的秘密我已经考虑过了,谢谢,觉得这对我的wee应用程序来说没什么大不了的。:-。