在 React Native App、Blackberry-Dynamics-React-Native-SDK 中获取 BB Dynamics 授权用户的电子邮件地址

问题描述

我使用 blackberry-dynamics-React-Native-SDK 在我的 React Native 应用程序中集成了 BlackBerry Dynamics。

React Native 版本 - 0.63.4,BB Dynamics SDK 版本 - 8.1

通过 BlackBerry Dynamics 提供的身份验证屏幕后,我需要用于登录 BB Dynamics 的电子邮件地址。

有什么方法可以获取登录用户的电子邮件地址吗?

---------------------------------

尝试了@JeffinWithYa 在下面的回答中建议的方法

创建了一个如下图所示的原生模块-

package com.myApp;

import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import java.util.Map;
import com.good.gd.GDAndroid;

public class BBAppConfig extends ReactContextBaseJavaModule {
   BBAppConfig(ReactApplicationContext context) {
       super(context);
   }

   @Override
    public String getName() {
        return "BBAppConfig";
    }

    @ReactMethod
    public Map<String,Object> getBBAppConfig() {
        Map<String,Object> appconfig = GDAndroid.getInstance().getApplicationConfig();
        return appconfig;
    }
}

并在我的代码中将其称为 -

const { BBAppConfig } = NativeModules;

console.log('bb module-----',BBAppConfig);

let appConfig = await BBAppConfig.getBBAppConfig();

console.log('---------bb app config----------',appConfig);

我正在获取本机模块,但方法返回未定义

有什么我遗漏的吗?另外,我现在正在模拟模式下运行我的应用,这可能是问题吗?

解决方法

React-Native Dynamics 库中目前没有 API 来获取授权用户的电子邮件地址。

您可以通过桥接模块到本机库来完成此操作。对于 Android,您可以从 getApplicationConfig 调用中的 GDAppConfigKeyUserId 参数获取它。

https://developer.blackberry.com/devzone/files/blackberry-dynamics/android/classcom_1_1good_1_1gd_1_1_g_d_android.html#aedeeab3604d3316fee1fda12cda56b8f

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...