在Startactivity中获取已注册用户的UserID

2020-09-07 16:31发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好 我使用向导在我的应用程序...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

我使用向导在我的应用程序中包含了SAML的入门功能,并且运行良好。

现在,我需要在活动中了解userId,以获取有关入职用户的一些信息。 应用程序中有一个" IsOnboarded"变量,但我找不到userId变量:

 val isOnBoarded =(应用程序为SAPWizardApplication).isOnboarded 

在混合世界中,我可以使用kapsel"设置"插件获取userId。

在此处获取此信息的最佳方法是什么?

最好的问候和预先的感谢,

克里斯

3条回答
hengyuye
2020-09-07 17:14 .采纳回答

另请参见

https://help.sap.com/doc/c2d571df73104f72b9f1b73e06c5609a/Latest/en-US/docs/user-guide/foundation/userinfo.html

https://blogs.sap.com/2018/10/15/step-by-step-with-the-sap-cloud-platform-sdk-for-android-part-3-authentication/

我在由SAP向导创建的SAML应用中尝试了此操作,并将以下代码添加到LogonActivity.java方法中。

私有无效startEntitySetListActivity(){
     sapServiceManager.openODataStore(()-> {
       getUser();
 ...
 }

 私人无效getUser(){
    字符串myTag =" userNameTest";
    Log.d(myTag,"在getUser中");
    SAPWizardApplication sapWizardApplication =(SAPWizardApplication)getApplication();
    SettingsParameters settingsParameters = sapWizardApplication.getSettingsParameters();
    UserRoles角色=新的UserRoles(ClientProvider.get(),settingsParameters);
    UserRoles.CallbackListener callbackListener = new UserRoles.CallbackListener(){
       @Override
       public void onSuccess(@NonNull UserInfo ui){
          Log.d(myTag,"用户名:" + ui.getUserName());
          Log.d(myTag,"用户ID:" + ui.getId());
          String [] roleList = ui.getRoles();
          Log.d(myTag,"用户具有以下角色");
          for(int i = 0; i  

希望有帮助,

Dan van Leeuwen

一周热门 更多>