【问题标题】:mobile backend starter listbykind error移动后端启动器 listbykind 错误
【发布时间】:2014-04-18 04:18:23
【问题描述】:

我正在数据存储区中创建一个新的实体类型(名为“xyz”),发送数据工作正常。当我尝试使用

mProcessingFragment.getCloudBackend().listByKind( "xyz", CloudEntity.PROP_CREATED_AT,     
Order.DESC, 50, Scope.FUTURE_AND_PAST, handler); 

我收到一条错误消息,提示“SubscriptionIds:字符串属性必须为 500 个字符或更少。我的发送代码是

CloudEntity newPost = new CloudEntity("xyz"); newPost.put("message",    
mMessageTxt.getText().toString());

如您所见,我所做的只是将“Guestbook”替换为“xyz”,我不明白为什么会出现上述错误。我需要更改我订阅的实体类型吗?

有什么建议吗?谢谢

【问题讨论】:

    标签: android mobile entity cloud backend


    【解决方案1】:

    我不确定这样做是否为时已晚。我遇到了同样的问题,我通过访问 appspot 后端 (*.appspot.com) 并单击“清除所有查询订阅”来解决。

    最初,我似乎无法更改 listByKind 上的 kindName,我会遇到与您相同的错误。但是,在清除查询订阅后,我能够将 listByKind 中的 kindName 更改为任何内容。我仍然要弄清楚为什么会这样。也许活跃订阅的数量有限制?今天我会做更多的测试。

    无论如何,希望这能解决您的问题。

    【讨论】:

      【解决方案2】:

      看看这个帖子Mobile Backend Starter subscribeToCloudMessage will not work

      对我有用的是首先按照 Pascal 在此线程上的建议清除所有查询订阅,然后按照 jamrockRay 的建议进行操作,添加

      .substring(0,16);
      

      此方法位于 GCMIntentService.java 文件中

      private static String doRegister(Context context) { String msg = ""; 
      try { GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(context); 
      String regId = gcm.register(Consts.PROJECT_NUMBER).substring(0,16); 
      msg = "Device registered, registration ID=" + regId;
      

      为我工作

      【讨论】:

        猜你喜欢
        • 2013-05-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-05
        • 2014-02-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多