Adobe DPS Android权利

时间:2014-03-30 11:07:51

标签: javascript android adobe-dps

我们坚持使用Adobe DPS项目。我们无法让我们的DPS安卓应用程序为我们的打印订阅者执行授权,我们想知道是否有人在那里设法做到了这一点。

我们在这里使用了Adobe的教程: http://www.adobe.com/devnet/digitalpublishingsuite/articles/library-store-combined-template.html,将isEntitlementViewer设置为true。

代码要求输入用户名和密码,然后通过Adobe的API Adob​​eLibraryAPI.js,它通过我们自己的API对用户进行身份验证。相同的代码在应用程序的iPad版本中100%工作。

实际处理登录的文件(称为LoginDialog.js)在名为clickHandler的函数中包含以下代码(我们添加了一些javascript警报以尝试调试登录过程)

    // Login using the authenticationService.
    var transaction = adobeDPS.authenticationService.login($username.val(), $password.val());
    alert("1:  "+transaction.state ); //returns “1:    0”
    transaction.completedSignal.addOnce(function(transaction) {
            alert("2:  "+transaction.state );  //never returns
            var transactionStates = adobeDPS.transactionManager.transactionStates;
            if (transaction.state == transactionStates.FAILED) {
                    $("#login .error").html("Authentication Failed.")
            } else if (transaction.state == transactionStates.FINISHED){
                    this.$el.trigger("loginSuccess");
                    this.close();
            }
            alert("3:  "+transaction.state ); //never returns
    }, this);
    alert("4:  "+transaction.error ); //never returns

有没有DPS / android / Entitlement经验的人?

1 个答案:

答案 0 :(得分:0)

Android Entitlement仅在向Adobe注册集成商ID 后才能运行,因为只有通过集成商ID配置了android查看器服务路由。 如果您没有集成商ID,则需要从Adobe支持部门获取一个。

另外值得一提的是,与iOS相反​​,Android DPS查看器仅支持一个用于身份验证和权利的基本路由/ URL。

例如,在iOS中,您可以通过第一个URL完成登录:

  

https://example.com/api/v1/SignInWithCredentials

权利的第二个URL可以位于不同的URL上:

  

http://server2.example.com/v1/api/entitlements

在android中,两个URL都必须相同,例如:

  

https://example.com/api/v1/SignInWithCredentials和   https://example.com/api/v1/entitlements