3

Digit 不久前发布了它的 Web SDK,但是我在将它与我的 phonegap/cordova 应用程序集成时遇到了一些问题。

我曾尝试使用 inappbrowser 插件,但由于数字使用 postMessage api 在 Windows 之间传输数据,而且似乎 apache 永远不会支持 cordova/phonegap 的这一点(或者至少他们会永远使用 - https://issues.apache.org /jira/browse/CB-4897)这似乎不太好用。

我知道数字团队可能正在研究与 phonegap/cordova 应用程序集成的解决方案,但目前没有,也没有迹象表明何时会出现。

有没有将phonegap/cordova与twitter数字集成的解决方案?

4

2 回答 2

5

我努力工作并研究了许多不同的东西,其中大部分都把我带到了死胡同。

TJ VanToll 使用 inappbrowser 插件向 postMessage API 发布了一个很棒的工作,但是这似乎不适用于我的 android(我没有尝试过 iphone)。TJ 的解决方案启发了我使用 digits-cordova 的 oAuth 解决方案。

您可以在https://github.com/yangli1990/digits-cordova.git找到我的解决方案

或者干脆用凉亭安装

请记住,如果 Fabrics 团队想出一种更原生的方式来将数字与 cordova/phonegap 应用程序集成,那么这个解决方案将会过时。

bower install digits-cordova
cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git

/* Optional cordova plugins */
cordova plugin add com.simonmacdonald.telephonenumber
cordova plugin add com.rjfun.cordova.sms

这个库运行良好,因为您还可以选择允许您的应用程序自动填充电话号码和位置,还可以拦截 SMS 以自动继续。

在您的 html 中确保您有适当的 javascript 链接

<!-- optional -->
<script type="text/javascript" src="bower_components/telephonenumber.js"></script>
<script type="text/javascript" src="bower_components/SMS.js"></script>

<!-- required -->
<script type="text/javascript" src="bower_components/inappbrowser.js"></script>
<script type="text/javascript" src="bower_components/digitsCordova.js"></script>

在你的 app.js

function openDigits(){
  var digits = new DigitsCordova('gmoaaZhEG88hMQUdpWHnF1IAz'); //Replace with your own consumerKey
    digits.open()
        .successCallback(function(loginResponse){
            var oAuthHeaders = loginResponse.oauth_echo_headers;
            var verifyData = {
                authHeader: oAuthHeaders['X-Verify-Credentials-Authorization'],
                apiUrl: oAuthHeaders['X-Auth-Service-Provider']
            };

            $.post('/verify', verifyData)
                .done(function(){ window.reload(); });
        }).failCallback(function(error){
            //error
        }).errorCallback(function(error){
            //error
        })
}

openDigits();

您可以在 github 页面上阅读有关 api 的信息,您可以选择打开或关闭自动填充和 smsIntercept 的一些选项。

于 2015-04-03T06:12:36.697 回答
-1

你的工作很棒。因为实施起来非常困难。我试试你的 API,但它并不完美。即有些工作,但有些没有。就像我专注于文本框而不打开国家/地区的弹出菜单时不打开键盘......如果你给我一些建议,那么欢迎......

于 2015-07-21T15:49:48.943 回答