码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • uni-app打包iOS ipa文件后不上架App store为用户提供下载解决过程记录


    写在前面,itms-services协议是什么

    itms-services协议是苹果提供的一种让iOS应用在用户设备上无线安装或升级的协议。
    具体来说:

    1. itms-services表示iOS应用无线安装服务的URL方案,格式为:itms-services://?action=download-manifest&url=MANIFEST_URL
    2. 其中MANIFEST_URL指向一个包含应用下载信息的清单文件。
    3. 清单文件是一个文本文件,使用XML格式,里面包含iOS应用的元数据、下载链接等信息。
    4. 当用户在Safari里打开一个itms-services协议的URL时,iOS系统会读取清单文件,并根据里面的信息触发应用的安装或升级。
    5. 这样可以实现在不需要连接电脑的情况下,通过手机Safari下载安装应用。
    6. itms-services需要配合关联的清单文件,并需要对应用进行正确代码签名后才能生效。
    7. 苹果要求这个安装过程需要用户手动触发,不能自动弹出。
      总之,itms-services协议可以让iOS应用实现无线安装和发布更新,为用户提供更流畅的应用下载体验。但需要构建正确的清单文件,并进行签名打包。

    UniApp打包ipa文件,上架iOS App Store 流程指南 - 知乎 (zhihu.com)

    在这里插入图片描述
    在这里插入图片描述

    报错:Asset validation failed (90717)

    在这里插入图片描述

    Invalid App Store Icon. The App Store Icon in the asset catalog in ‘HBuilder.app’ can’t be transparent nor contain an alpha channel. (ID: 5c42075b-3339-4bb6-a08c-ad24f4182d60)
    解决方案:
    在这里插入图片描述

    iOS 提交应用过程出现的错误及#解决方案#images can’t contain alpha channels or transparencies - iTeaTime(技术清谈) - 博客园 (cnblogs.com)
    ->要通过mac将图表另存为png,然后再次将该图片另存为即可出现【Alpha】取消选项

    TestFlight:App 不可用或者不存在_iOSTips的博客-CSDN博客

    在这里插入图片描述

    ->也就是说你通过Testflight测试的App必须是已上架App store的App!即是【内测版】

    不通过App store使用户安装,采用以下方法:itms-services协议

    IOS 使用itms-services协议,服务端安装应用_itms-services info.plist格式_书弋江山的博客-CSDN博客

    plist格式:

      
    DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
    <plist version="1.0">  
    <dict>  
        <key>itemskey>  
        <array>  
            <dict>  
                <key>assetskey>  
                <array>  
                    <dict>  
                        <key>kindkey>  
                        <string>software-packagestring>  
                        <key>urlkey>  
                        <string>ipa文件下载地址string>  
                    dict>  
                array>  
                <key>metadatakey>  
                <dict>  
                    <key>bundle-identifierkey>  
                    <string>包名string>  
                    <key>bundle-versionkey>  
                    <string>版本号string>  
                    <key>kindkey>  
                    <string>softwarestring>  
                    <key>titlekey>  
                    <string>项目名字string>  
                dict>  
            dict>  
        array>  
    dict>  
    plist>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    注意plist下载的网络协议必须为HTTPS协议,故可以使用GitHub来测试,测试好了使用自己公司服务器
    在这里插入图片描述
    在这里插入图片描述

    过程截图:

    ->点击【安装】后在桌面下载安装,以下为采用不同证书打包上传服务器后在测试手机上的结果:
    iPhone12(iOS15.4)iPhone7plus(iOS15.7.9)

    • 采用发布证书打包后的文件:
      无法安装,点击app显示“无法安装此App,因为无法验证完整性”
      在这里插入图片描述

    • 采用测试(开发)证书(未添加测试手机uuid)打包后的文件:
      iPhone7plus测试手机正常安装,iPhone12依旧无法验证完整性

    • 采用测试(开发)证书(都添加了uuid):
      可正常安装使用

  • 相关阅读:
    数据结构代码实现快速排序
    自动化测试数据生成:Asp.Net Core单元测试利器AutoFixture详解
    Java安全编码规范之Web安全漏洞
    使用 ES 实现疫情地图或者外卖点餐功能(含代码及数据)
    有偿找IRT项目反应原理模型的朋友解答
    Webpack 5 超详细解读(四)
    C++函数
    C语言:文件操作
    深入探讨 Golang 中的追加操作
    P33 JSlider滑块
  • 原文地址:https://blog.csdn.net/m0_46149348/article/details/133163710
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号