zoukankan      html  css  js  c++  java
  • 新增扩展程序功能打包提交新版 WARNING ITMS-90473 警告问题

    1、问题描述

    • 自从在主应用中加入SiriShortCut功能之后,打包程序上传至 iTunes Connect 就会出现警告,看其原因描述是CFBundleVersion主应用与子应用的不一致导致的
    Prepared archive for uploading
    Uploaded with warnings
    	warning: App Store Connect Operation Warning
    WARNING ITMS-90473: "CFBundleVersion Mismatch. The CFBundleVersion value '1.1' of extension 'ukon.app/PlugIns/CHSiriIntent.appex' does not match the CFBundleVersion value '181212.337' of its containing iOS application 'ukon.app'."
    

    2、问题解决

    • 如果对工程上的初始配置没有修改过,例如:没有使用脚本动态修改CFBundleVersion,那么可以直接使用以下方法解决

    • 2.1 直接修改Build

      • 主程序
      • siriShortCut子程序

      • 只要保证主子程序内容一致就可以了
    • 2.2 动态修改Build

      • 动态修改Build使用脚本来修改,由于主程序中使用了动态修改,子程序中也需要使用动态修改。我这里由于接的是老项目,不了解工程配置,找了好久才找出原因
      • 脚本使用sh脚本
      BUILD_REV=`date +%y%m%d`.`git rev-list HEAD | wc -l | awk '{print $1}'`
      GIT_HASH=`git log --oneline -n 1 | awk '{print $1}'`
      INFO_PATH="${TARGET_BUILD_DIR}"/${INFOPLIST_PATH}
      
      /usr/libexec/PlistBuddy -c "Set :CFBundleVersion ${BUILD_REV}" ${INFO_PATH}
      /usr/libexec/PlistBuddy -c "Delete :GIT_HASH" ${INFO_PATH}
      /usr/libexec/PlistBuddy -c "Add :GIT_HASH string ${GIT_HASH}" ${INFO_PATH}
      
      • 在主程序与子程序中分别创建脚本文件
      • 双击重命名为Update CFBundleVersion(Build Version)
      • 展开粘贴以上脚本
      • 由于脚本中的拼接还使用到了CFBundleShortVersionString,所以还要保持这里一致
      • 主子程序都要修改,其中CFBundleVersion在这里设置无效
      • 至此,就可以动态修改保持主子程序CFBundleVersion一致了,得出的构建版本是:日期 + 应用版本号
  • 相关阅读:
    字母运算
    7.5 字典序全排列
    5
    4 c#
    c# 贪吃蛇源码
    【Django】django.core.exceptions.ImproperlyConfigured: mysqlclient 1.4.0 or newer is required;
    redis 存储验证码 基本使用
    Git 的基本使用
    docker(专业版) 安装过程报错
    router.push query 路由 跳转 传参使用
  • 原文地址:https://www.cnblogs.com/CH520/p/10112337.html
Copyright © 2011-2022 走看看