代码之家  ›  专栏  ›  技术社区  ›  ispiro

存储ID格式错误

  •  1
  • ispiro  · 技术社区  · 6 年前

    假设持久IAP的12位存储ID为9999999999, license.AddOnLicenses 包含密钥 9999999999/0010 而不是预期的 九千九百九十九亿九千九百九十九万九千九百九十九 .

    代码:

    StoreContext store = StoreContext.GetDefault();
    StoreAppLicense license = await store.GetAppLicenseAsync();
    

    这与 the docs 即[增加强调]:

    键和值对的映射, 其中每个密钥都是存储ID 一个 来自Microsoft商店目录的附加SKU,每个值都是 StoreLicense对象,该对象包含附加组件的许可证信息。

    这是一个错误还是我做错了什么(或者理解文档是错误的)?

    2 回复  |  直到 6 年前
        1
  •  3
  •   Tany3450    6 年前

    其中每个密钥是附加SKU的存储ID

    你得到的是 SKU商店ID . 它是一个4个字符的字母数字字符串,用于标识SKU。此属性返回的完整存储ID示例为9NBLGGH69M0B/000N。请参阅 here .

    你要找的是 产品商店ID . 它是一个12个字符的字母数字字符串,如9NBLGGH69M0B。此存储ID在Partner Center中可用,由相关StoreProduct对象的StoreID属性返回。请参阅 here .

    所以您需要检查storeproduct.storeid属性。

        2
  •  2
  •   DasiyTian_1203    6 年前

    每个应用程序和加载项都有关联的许可证 指示用户是否有权使用应用程序或附加组件。商店中的每个产品都至少有一个SKU,并且每个SKU至少有一个可用性。

    一些发行商有能力定义自己的SKU。例如,大型游戏发行商可能发布一款游戏,其中一个SKU在不允许使用红血的市场中显示绿血,另一个SKU在所有其他市场中显示红血。

    测试它们是否以storeid开头

    是的,它以商店ID开始(有时也称为产品商店ID)

    sku的存储ID具有以下格式 <product Store ID>/xxxx ,其中XXXX是一个4个字符的字母数字字符串,用于标识产品的SKU。如图所示:

    enter image description here

    有关产品ID和SKU的更多概念,请参阅文档: Products, SKUs, and availabilities Store IDs