前言
- iOS上架前的准备:https://kunnan.blog.csdn.net/article/details/121358539
- 上架技巧(不更新版本的情况下删除App Store非主语言的方法)
- 常见上架问题及解决方案(上传ipa包被吃掉、已上架app在AppStore搜不到)
- app上架后的事项(ASO、ASA)
I、AppStore 上架技巧
1.1 上传构建版本
archive之后通过 Xcode、macOS 版 Transporter 或 altool 上传构建版本
- Xcode 上传
Transporter
- 通过 altool 上传您 App 的二进制文件
您可以使用 xcrun(包含在 Xcode 中)来调用 altool,该命令行工具用于公证、验证并上传您 App 的二进制文件至 App Store。在“终端”的命令行中指定以下命令之一:
$ xcrun altool --validate-app -f file -t platform -u username [-p password] [--output-format xml] $ xcrun altool --upload-app -f file -t platform -u username [-p password] [—output-format xml]
【注】如果您使用自动构建系统,则可以将公证过程集成到现有构建脚本中。Xcode 中的 altool 和 stapler 命令行工具可将您的软件上传至 Apple 公证服务,并将生成的凭证附加到您的可执行文件中。altool 位于:/Applications/Xcode.app/Contents/Developer/usr/bin/altool。
有关更多信息,请参见《altool 指南》
1.2 不更新版本的情况下删除App Store非主语言的方法
1、由于AppStore缓存原因导致已上架app在AppStore上搜不到的解决方案2、不更新版本的情况下删除App Store非主语言的方法(应用场景:马甲包)
1.3 对开发权限和上架权限进行分离管理
在大公司通常苹果开发账号归数据中心人管,如果没有专门测试的开发者账号,只能在公司开发者下面添加一个新用户用于测试开发;选择对应职能即可。
通过添加开发职能账号,方便其他开发者知道app的审核状态。当然你也可以采用邮件转发来同步信息(当发件人是>no_reply@email.apple.com时,就转发给特定人员 )
具体流程举例
苹果版本升级先发邮件给市场管理部邮箱scglb@xxx.com,由对应人员走oa申请流程,审批完成后开发同事邮件发送审批截图+具体事宜给总部研发对应同事,然后总部这边就操作后面的上架流程(打包+上架)。
II、常见上架问题及解决方案
2.1 iOS app因蓝牙功能隐蔽而导致上架被拒绝的解决方案
- iOS app因蓝牙功能隐蔽而导致上架被拒绝的解决方案:https://blog.csdn.net/z929118967/article/details/112260495
2.2 info.plist 的权限配置问题导致的app被吃掉了
如果上传ipa包之后,app被吃掉了,大部分是权限问题。
<key>NSAppleMusicUsageDescription</key> <string>App需要您的同意,才能访问媒体资料库</string> <key>NSBluetoothPeripheralUsageDescription</key> <string>App需要您的同意,才能访问蓝牙</string> <key>NSCalendarsUsageDescription</key> <string>App需要您的同意,才能访问日历</string> <key>NSCameraUsageDescription</key> <string>App需要您的同意,才能访问相机</string> <key>NSLocationAlwaysUsageDescription</key> <string>App需要您的同意,才能始终访问位置</string> <key>NSLocationUsageDescription</key> <string>App需要您的同意,才能访问位置</string> <key>NSLocationWhenInUseUsageDescription</key> <string>App需要您的同意,才能在使用期间访问位置</string> <key>NSMicrophoneUsageDescription</key> <string>App需要您的同意,才能访问麦克风</string> <key>NSPhotoLibraryAddUsageDescription</key> <string>To save the conversion results to the phone, you need to open the album permissions.</string> <key>NSPhotoLibraryUsageDescription</key> <string>To save the conversion results to the phone, you need to open the album permissions.</string> <key>NSRemindersUsageDescription</key> <string>App需要您的同意,才能访问提醒事项</string>
- other
<key>NSAppleMusicUsageDescription</key> <string></string> <key>NSCalendarsUsageDescription</key> <string></string> <key>NSCameraUsageDescription</key> <string>是否允许此App使用你的相机?</string> <key>NSContactsUsageDescription</key> <string>是否允许此App访问你的通讯录?</string> <key>NSLocationWhenInUseUsageDescription</key> <string></string> <key>NSMicrophoneUsageDescription</key> <string>是否允许此App使用你的麦克风?</string> <key>NSPhotoLibraryUsageDescription</key> <string>是否允许此App访问你的媒体资料库?</string> <key>NSRemindersUsageDescription</key> <string></string>
III 、app上架之后的事项
3.1 ASO
- 【ASO项目使用的技术】(例如:1、hook CFUserNotificationCreat 截取Header 部分信息、Message内容 进行任务处理2、设备信息的修改、清理数据3、js逆向)
3.2 管理符号表
- 上传app上线版本的dSYMs文件到bugly,用于后续的app日志文件符号化
3.3 管理代码分支
- git merge用法、常用git脚本:针对GitHub的master 更名进行脚本调整(master 更名为main,例如push 需改为git push -u origin main)
3.4 申请iOS App上线爱思助手应用市场
iOS App如何在爱思助手应用市场上架?
3.5 Apple search ads(ASA)
https://searchads.apple.com/cn/
时隔五年,ASA(Apple Search Ads,即苹果搜索广告)终于上线中国大陆地区的App Store。
使用 Apple Search Ads Advanced,你可以在两个位置展示你的 app:
1、一个是“搜索”标签广告,在用户搜索前展示;2、另一个是搜索结果顶部广告,在用户搜索时展示。
ITC后台和苹果广告这两者是两个不同的体系,两个账号是不同的,单独的一个苹果广告账号可以给多个App进行投放
如果公司下有多个开发者账号,可将这些账号的包授权给同一个投放账号,这样这个投放账号就可以投放不同主体的App。
Q1.目前ASA账户充值是预充值还是后付呢?
现在是要预充值的,因为苹果可能会随时根据你的消耗情况进行扣款。扣款条件主要是分两种情况,分别是满500美金或者7天扣一次,当这两个条件哪个先触达了就按哪个来。
Q2.公司注册的个人小号没有营业执照,这个号下面的App应该怎么推广?
按目前苹果在国内市场的政策来看,要使用苹果广告都需要营业执照,所以这样的小号大概率是没办法推广的。