SMP SDK Android密码更改

2020-09-13 05:40发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好, ...

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

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


您好,

我在更改后端密码时遇到了一些问题。 当我用一个用户登录并在网关中登录时,我更改了密码用户密码,现在我尝试使用新的凭据登录,即使它已终止我的应用程序并尝试使用更新的凭据登录,它也无法正常工作,并且失败了, 一旦我注销了我的应用程序并尝试使用更新的凭据登录后即可正常工作。

我正在android中使用SMP SDK SP14 PL12库。

请在下面找到我在Android中使用的代码段。

 sLGCORE.changeBackendPassword(mPassword)
 在侦听器中,我编写了以下代码
 backendPasswordChanged()此方法始终在更改或不更改后端密码的情况下返回TRUE。
 
 @Override
         public void backendPasswordChanged(boolean backendPasswordChanged){
             MPLCommon.getInstance()。showMPLLog(MPLComponents.LogTypes.VERBOSE,
                     " backendPasswordChanged ====>" + backendPasswordChanged);

           
             如果(backendPasswordChanged){
                //后端密码未更改。
                 如果(!mPassword.equalsIgnoreCase(RacePreferences.getInstance()。getPrefPassword())){

                     mLoginResult = mContext.getString(R.string.invalid_creds);
                     isErrorStaus = true;
                     mServiceListener.onServiceError(mLoginResult);
                 }其他{
                     尝试{
                         sLGCORE.changeApplicationPassword(RacePreferences.getInstance()。getPrefPassword(),mPassword,backendPasswordChanged);
                     } catch(LogonCoreException e){
                         e.printStackTrace();
                     }
                     RacePreferences.getInstance()。setPrefPassword(mPassword);
                     RacePreferences.getInstance()。setSubStatus(false);
                     mServiceListener.onResponse(null);
                 }
             }其他{
                //后端密码已更改。

                 尝试{
                     RacePreferences.getInstance()。setPrefPassword(sLGCORE.getLogonContext()。getBackendPassword());
                 } catch(LogonCoreException e){
                     e.printStackTrace();
                 }
                 mLoginResult = mContext.getString(R.string.invalid_password_change);
                 isErrorStaus = true;
                 mServiceListener.onServiceError(mLoginResult);
             }
         }

         @Override
         公共无效applicationSettingsUpdated(){
             MPLCommon.getInstance()。showMPLLog(MPLComponents.LogTypes.VERBOSE," applicationSettingsUpdated ====>");
         }
     });
 } 

谁能帮我解决这个问题。
 

4条回答
Nir深蓝
2020-09-13 06:01 .采纳回答

这是设计使然。 这是SMP/SCPms安全功能,不允许用户在注册过程中使用的凭据不登录。 如您所知,唯一的解决方法是重新注册。 我建议您在更改之前使用推送通知,以使用户知道他/她必须尽快重新注册,或者删除注册(删除至https://:443/odata/applications///Connections(''))并强制用户以这种方式重新注册。 也许您可以为产品管理创建一个增强请求,以使其更加用户友好。

一周热门 更多>

相关问答