zoukankan      html  css  js  c++  java
  • CloudDB对象类型创建失败,问题解决三板斧

    在使用华为AGC云数据库服务,可能会遇到对象类型创建失败的问题,我总结了遇到该类问题可以按照以下思路分析解决,如果有朋友希望使用云数据服务,也可以查看我的上一篇文章。

    问题相关日志

    集成CloudDB的时候,经常会遇到对象类型创建失败的问题,典型的日志有:

    1、提示ObjectType数量不匹配
    NaturalBase: GenerateDiffSchemas: remove ObjectType is not supported. count of ObjectType is less than current
    2、对象类型协商失败
    E/NaturalBase: OpenNaturalStore: negotiate failed. W/AGConnectCloudDB: openCloudDBZone: failed to create or open a cloudDBZone.
    3、scheme未同步
    [NaturalCloudSyncModule][OnConnected]: negotiate schema. [PushMessageAndNotifyStoreCv] Schema is UnSynced
    4、ObjectType版本已修改,但ObjectType未修改
    E/NaturalBase: CreateObjectType: ObjectType version has changed, but ObjectType has not changed. E/AGConnectCloudDB: createObjectType: failed to create ObjectType into the AGCConnectCloudDB.
    问题原因
    出现这个问题,主要的原因就是你的Android的项目里,ObjectType版本对应的文件,与AGC云侧的对象类型不一致导致的。

    AGC云侧的,可以在这边查看:

    Android项目中,主要看ObjectTypeInfoHelper以及里面对应的Class。

    问题解决三板斧:
    1、在AGC云侧重新导出ObjectTypes
    出现这个问题,最大的原因就是项目里面的ObjectType和云侧不一致导致的问题。这个时候就需要重新导出:

    在AGC界面的 : 我的项目 – 构建 – 云数据库 路径下,点击对象类型页签,在版本后面选择你要导出的版本,然后点击导出。

    导出的时候,选择JAVA – android 然后输入一个包名。

    导出完成后,将zip中的文件,解压到你的项目路径下即可。

    2、检查对应匹配的版本
    对象类型文件中,有两个Version很重要,使用的时候也需要重点关注。 也就是ObjectTypeInfoHelper文件中的

    1、 FORMAT_VERSION:需要和SDK版本相对应。

    当导出的FORMAT_VERSION = 1时,请使用1.2.2以下版本的CloudDB的SDK,推荐使用1.2.1.301

    当导出的FORMAT_VERSION = 2时,请使用新版本CloudDB的SDK,建议使用1.2.3.301。

    2、 OBJECT_TYPE_VERSION

    这个就是在AGC界面导出时,在ObjectType上选择的Version,这里一般导出无需修改。

    3、端侧原本的应用,卸载以后再重新安装

    如果你设备上之前安装过有问题的ObjectType,直接覆盖安装的话,手机上保留原本老应用的缓存。导致创建对象类型失败。

    正确的操作步骤:

    1、 重新打包应用,

    2、 手动在设备上卸载原应用。

    3、 将重新打包的应用安装到设备上调试

    官网CloudDB文档中,关于对象类型的操作:

    https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-clouddb-agcconsole-objecttypes

    CloudDB Demo:

    https://github.com/AppGalleryConnect/agc-android-demos/tree/master/acg-clouddb-demo-java

    云数据库使用指导:

    https://developer.huawei.com/consumer/cn/forum/topic/0202441049629310404?fid=0101271690375130218

    原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0201441041702500387?fid=0101271690375130218
    原作者:Mayism

  • 相关阅读:
    SQL8-函数与触发器
    SQL7-约束与权限
    SQL6-连接与视图
    SQL5-数据类型
    SQL4-嵌套查询
    SQL3-基本运算
    SQL2-基本语法
    SQL1-结构概括
    SQL历史概论
    PHP Fatal error: Class 'mysqli' not found
  • 原文地址:https://www.cnblogs.com/developer-huawei/p/14662267.html
Copyright © 2011-2022 走看看