首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法获得设备令牌Android (Appcelerator)

无法获得设备令牌Android (Appcelerator)
EN

Stack Overflow用户
提问于 2014-07-25 09:28:42
回答 1查看 1.5K关注 0票数 1

我无法获得在Android中使用ACS推送通知所需的设备令牌。我搜索了所有相关的问题,但没有得到答案。我跟着导游为Android设备配置推送服务订阅推送通知

  • 应用程序类型:手机
  • 钛SDK:钛命令-线接口,CLI3.3.0版,钛SDK3.2.3.GA版
  • 平台和版本:Android4.3
  • 设备:小米红密1S
  • 主机操作系统: OSX 10
  • 钛工作室:钛工作室,构建: 3.3.0.201407100905构建:jenkins-钛-rcp-主-164(原版/主版)

TiApp

代码语言:javascript
复制
<modules>
 <module platform="commonjs">ti.cloud</module>
        <module platform="iphone">ti.map</module>
        <module platform="android">ti.map</module>
        <module platform="android" version="2.2.0">ti.cloudpush</module>
</modules>

如果不设置ti.cloudpush 2.2.0版本,则在日志中得到此错误

代码语言:javascript
复制
[ERROR] :  Found incompatible Titanium Modules:
[ERROR] :     id: ti.cloudpush   version: 3.3.0  platform: android   min sdk: undefined
[ERROR] Application Installer abnormal process termination. Process exit value was 1

相关代码

代码语言:javascript
复制
if (Ti.Platform.osname == "android") {
        var CloudPush = require('ti.cloudpush');
        CloudPush.retrieveDeviceToken({
            success : function deviceTokenSuccess(e) {
                // Use this device token with Ti.Cloud.PushNotifications calls
                // to subscribe and unsubscribe to push notification channels
                Alloy.Globals.tokenPush =   e.deviceToken;
                funciones.warn('Device Token: ' + e.deviceToken);
                funciones.suscribirCanal(param1,Alloy.Globals.tokenPush);
                //return token;
            },
            error : function deviceTokenError(e) {
                funciones.warn('Failed to register for push! ' + e.error);
            }
        });
        // These events monitor incoming push notifications
        CloudPush.addEventListener('callback', function(evt) {
            if(ostype === "android"){
                var alertString = JSON.parse(e.payload).android.alert;
                alert("Push recibido "+alertString);
            }


        });

    }

日志STACKTRACE

代码语言:javascript
复制
[WARN] :   The module ti.cloudpush does not support the ABI: x86
[WARN] :   It only supports the following ABIs: armeabi, armeabi-v7a
[WARN] :   Your application will most likely encounter issues
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Failed to request device token.
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: org.apache.http.conn.HttpHostConnectException: Connection to https://push-coordinator.cloud.appcelerator.com refused
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:183)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.requestForDeviceToken(CCPushService.java:247)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.getDeviceToken(CCPushService.java:82)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.access$000(CCPushService.java:28)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService$1.run(CCPushService.java:172)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.lang.Thread.run(Thread.java:841)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Caused by: java.net.ConnectException: failed to connect to /54.215.6.76 (port 443): connect failed: ETIMEDOUT (Connection timed out)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connect(IoBridge.java:114)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:460)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.Socket.connect(Socket.java:832)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     ... 11 more
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Caused by: libcore.io.ErrnoException: connect failed: ETIMEDOUT (Connection timed out)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.Posix.connect(Native Method)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connect(IoBridge.java:112)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     ... 16 more
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Invalid token request
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: org.apache.http.conn.HttpHostConnectException: Connection to https://push-coordinator.cloud.appcelerator.com refused
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:183)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.requestForDeviceToken(CCPushService.java:247)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.getDeviceToken(CCPushService.java:82)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService.access$000(CCPushService.java:28)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at com.appcelerator.cloud.push.CCPushService$1.run(CCPushService.java:172)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.lang.Thread.run(Thread.java:841)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Caused by: java.net.ConnectException: failed to connect to /54.215.6.76 (port 443): connect failed: ETIMEDOUT (Connection timed out)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connect(IoBridge.java:114)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:460)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at java.net.Socket.connect(Socket.java:832)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:119)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:144)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     ... 11 more
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService: Caused by: libcore.io.ErrnoException: connect failed: ETIMEDOUT (Connection timed out)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.Posix.connect(Native Method)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     at libcore.io.IoBridge.connect(IoBridge.java:112)
[ERROR] :  E/com.appcelerator.cloud.push.CCPushService:     ... 16 more
[ERROR] :  CloudpushModule: (Thread-3453) [3700,63022] Failed to retrieve device token! See stack trace below for more information.
[WARN] :   W/System.err: com.appcelerator.cloud.push.PushServiceException: Invalid token request
[WARN] :   W/System.err:    at com.appcelerator.cloud.push.CCPushService.getDeviceToken(CCPushService.java:123)
[WARN] :   W/System.err:    at com.appcelerator.cloud.push.CCPushService.access$000(CCPushService.java:28)
[WARN] :   W/System.err:    at com.appcelerator.cloud.push.CCPushService$1.run(CCPushService.java:172)
[WARN] :   W/System.err:    at java.lang.Thread.run(Thread.java:841)
[WARN] :   Failed to register for push! com.appcelerator.cloud.push.PushServiceException: Invalid token request

我很感谢你的帮助。提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-31 21:13:17

您使用的版本不匹配。

你的Ti是SDK3.3.0你的SDK是3.2.3.GA,在演播室里你似乎在使用一个CI版本,即3.3.0.201407100905,它本质上是不稳定的。

我认为首先您需要确保Ti的安装是正确的,我将从重新安装SDK到3.3.0.GA开始

然后使用:

代码语言:javascript
复制
<module platform="android">ti.cloudpush</module>

没有版本的param。如果它在这一点上无法编译,它就是在告诉您一些事情。也就是说,你的安装很糟糕。强制使用较低的版本号只是强制使用旧的不兼容库版本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24952406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档