android - Intent 打开谷歌身份验证器

标签 android android-intent google-authenticator

有没有办法通过 Intent 打开 Google 身份验证器。如果是,是否可以使用已填写的 key 打开它,以使其对用户实用?

最佳答案

我有一个更通用的代码和平,所以,你只需要将包名称作为参数发送到方法 openApp(Context context, String packageName)

public static void openApp(Context context, String packageName) {

    PackageManager manager = context.getPackageManager();
    Intent i = manager.getLaunchIntentForPackage(packageName);
    if (i == null) {
        try {
            context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + packageName)));
        } catch (android.content.ActivityNotFoundException anfe) {
            context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + packageName)));
        }
        return;
    }
    i.addCategory(Intent.CATEGORY_LAUNCHER);
    context.startActivity(i);
}

这样一来,即使设备上没有您要启动的应用,用户也会被您的应用引导到 Play 商店并可能下载它。

因此,只需调用 openApp(context, "com.google.android.apps.authenticator2"); 即可打开 Google Authenticator 应用。

编辑

您可以使用已设置的所有值调用 Google Authenticator,如下所示:

String uri = "otpauth://totp/whatever:" + email + "?secret=" + yourKey + "&issuer=whatever"
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
startActivity(intent);

关于android - Intent 打开谷歌身份验证器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32234378/

相关文章:

android - EditText的drawableRight上的点击事件无法正常工作?

java - Android:从外部XML文件中提取数据并将其存储在内部XML文件中(相同的文件结构)

symfony - 有人知道 Symfony 3 构建应用程序的双因素身份验证 API 吗?

google-authenticator - 为什么 Microsoft Authenticator 在使用电子邮件作为标签而不是颁发者时显示电子邮件域?

android - 将图像的特定部分制作成 Android 应用程序的可点击按钮

android - 当我们不在 getLastLocation() 中时,最后已知的位置会丢失 - Android

java - Proximity Alert Intent 不放置或返回额外的东西

android - NFC Intent 过滤器 => I/NfcDispatcher(923) : Connect to a tech with a different handle

java - 单击后退按钮会导致强制关闭/NullPointerException

android - 我该怎么做 "Authenticating Your Client with Google"?