iOS App上架技能:不更新版本的情况下删除App Store非主语言的方法、app上架后的事项(ASO及ASA)

简介: iOS App上架技能:不更新版本的情况下删除App Store非主语言的方法、app上架后的事项(ASO及ASA)

前言

  • 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  上传构建版本

https://help.apple.com/app-store-connect/#/devb1c185036

  • Xcode 上传

image.png

Transporter

image.png

  • 通过 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 指南》

https://help.apple.com/asc/appsaltool/

1.2 不更新版本的情况下删除App Store非主语言的方法

1、由于AppStore缓存原因导致已上架app在AppStore上搜不到的解决方案2、不更新版本的情况下删除App Store非主语言的方法(应用场景:马甲包)

https://blog.csdn.net/z929118967/article/details/103584117

1.3 对开发权限和上架权限进行分离管理

在大公司通常苹果开发账号归数据中心人管,如果没有专门测试的开发者账号,只能在公司开发者下面添加一个新用户用于测试开发;选择对应职能即可。

image.png

通过添加开发职能账号,方便其他开发者知道app的审核状态。当然你也可以采用邮件转发来同步信息(当发件人是>no_reply@email.apple.com时,就转发给特定人员 )

image.png

具体流程举例

苹果版本升级先发邮件给市场管理部邮箱scglb@xxx.com,由对应人员走oa申请流程,审批完成后开发同事邮件发送审批截图+具体事宜给总部研发对应同事,然后总部这边就操作后面的上架流程(打包+上架)。

II、常见上架问题及解决方案

2.1 iOS app因蓝牙功能隐蔽而导致上架被拒绝的解决方案

  • iOS app因蓝牙功能隐蔽而导致上架被拒绝的解决方案:https://blog.csdn.net/z929118967/article/details/112260495

相关的公众号文章:https://mp.weixin.qq.com/s?__biz=MzI0MjU5MzU5Ng==&mid=2247484133&idx=1&sn=1d50f59ea026c1b4a9d540c9c1222695&chksm=e978b8b6de0f31a0bbcff38495e858d4db16a854828c1c80719df820826d8405f93b3662ef29&mpshare=1&scene=1&srcid=0114rQ5AKSFyy8QxZoG4Jrmf&sharer_sharetime=1610606706852&sharer_shareid=38c24777c9b84b8b44c56026b3aa9bd7&version=3.0.36.2330&platform=mac#rd

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逆向)

https://blog.csdn.net/z929118967/article/details/90647562

3.2 管理符号表

  • 上传app上线版本的dSYMs文件到bugly,用于后续的app日志文件符号化

3.3 管理代码分支

  • git merge用法、常用git脚本:针对GitHub的master 更名进行脚本调整(master 更名为main,例如push 需改为git push -u origin main)

https://blog.csdn.net/z929118967/article/details/104572619

3.4 申请iOS App上线爱思助手应用市场

iOS App如何在爱思助手应用市场上架?

https://blog.csdn.net/z929118967/article/details/117786445

3.5 Apple  search ads(ASA)

https://searchads.apple.com/cn/

时隔五年,ASA(Apple Search Ads,即苹果搜索广告)终于上线中国大陆地区的App Store。

image.png

使用 Apple Search Ads Advanced,你可以在两个位置展示你的 app:

1、一个是“搜索”标签广告,在用户搜索前展示;2、另一个是搜索结果顶部广告,在用户搜索时展示。

ITC后台和苹果广告这两者是两个不同的体系,两个账号是不同的,单独的一个苹果广告账号可以给多个App进行投放

如果公司下有多个开发者账号,可将这些账号的包授权给同一个投放账号,这样这个投放账号就可以投放不同主体的App。

Q1.目前ASA账户充值是预充值还是后付呢?

现在是要预充值的,因为苹果可能会随时根据你的消耗情况进行扣款。扣款条件主要是分两种情况,分别是满500美金或者7天扣一次,当这两个条件哪个先触达了就按哪个来。

Q2.公司注册的个人小号没有营业执照,这个号下面的App应该怎么推广?

按目前苹果在国内市场的政策来看,要使用苹果广告都需要营业执照,所以这样的小号大概率是没办法推广的。

see also

目录
相关文章
|
10月前
|
运维 iOS开发 Windows
windows电脑备案ios APP获取公钥和证书指纹Sha-1值的方法
在阿里云进行APP备案、在备案IOS端的环节的时候,发现需要我们将p12证书安装在电脑上,再用xcode或或钥匙串访问来获取这个证书的公钥和sha-1值。 但是大部分开发uniapp应用的同学们,或者进行发布的运维人员的电脑都是windows,无法按照阿里云的教程来获取ios的公钥和sha-1。备案就被卡主了。 这里介绍下另一个方法,就是使用香蕉云编来在线上传证书获取。如下图所示,打开香蕉云编后,找到下图这个功能
1364 0
|
存储 Linux 容器
【Container App】在容器中抓取网络包的方法
本文介绍在Azure Container App中安装tcpdump抓取网络包,并通过Storage Account上传抓包文件的方法。内容包括使用curl和nc测试外部接口连通性、长Ping端口、安装tcpdump、抓取网络包、以及通过crul命令上传文件至Azure Storage。适用于需要分析网络请求和排查网络问题的场景。
336 0
|
API Go 网络架构
【Azure Logic App】特殊的方法来停止正常步骤无法停止的Workflow Job
本文介绍了一种特殊方法,用于解决标准版Logic App在异常情况下无法正常停止的问题。当点击Cancel按钮报错“WorkflowRunCanNotBeCancelled”时,可通过以下步骤解决:进入Logic App的Kudu页面,定位到`C:\home\site\wwwroot`目录下的`host.json`文件,添加`Jobs.SuspendedJobPartition`和`Jobs.CleanupJobPartition`参数,并以大写格式设置值为`&quot;&lt;WORKFLOWID&gt;:2D&lt;RUNID&gt;&quot;`。调整后可成功停止异常Job
406 18
|
存储 JavaScript
(ERP系统查看DWG)MxCAD APP调用内部弹框的方法
MxCAD APP 二次开发提供了调用项目内部弹框的接口,以保持样式统一。用户需创建 `test_dialog` 文件夹并依次创建 `dialog.ts`、`dialog.vue` 和 `index.ts` 文件来注册、构建和渲染弹框。通过 `useDialogIsShow` 钩子函数控制弹框显示,并可在方法中直接调用 `dialog.showDialog()` 来控制弹框显隐。此外,还支持监听确认或取消事件获取数据,以及通过配置 `vite.config.ts` 解决样式冲突问题。最终在 `src/index.ts` 中引入相关文件即可实现弹框功能。
|
安全 数据处理 Swift
深入探索iOS开发中的Swift语言特性
本文旨在为开发者提供对Swift语言在iOS平台开发的深度理解,涵盖从基础语法到高级特性的全面分析。通过具体案例和代码示例,揭示Swift如何简化编程过程、提高代码效率,并促进iOS应用的创新。文章不仅适合初学者作为入门指南,也适合有经验的开发者深化对Swift语言的认识。
503 9
|
安全 API Swift
探索iOS开发中的Swift语言之美
【10月更文挑战第23天】在数字时代的浪潮中,iOS开发如同一艘航船,而Swift语言则是推动这艘船前进的风帆。本文将带你领略Swift的独特魅力,从语法到设计哲学,再到实际应用案例,我们将一步步深入这个现代编程语言的世界。你将发现,Swift不仅仅是一种编程语言,它是苹果生态系统中的一个创新工具,它让iOS开发变得更加高效、安全和有趣。让我们一起启航,探索Swift的奥秘,感受编程的乐趣。
|
安全 Swift iOS开发
探索iOS开发中的Swift语言之美
在数字时代的浪潮中,移动应用已成为日常生活的延伸。本文将深入探讨iOS平台上的Swift编程语言,揭示其背后的设计哲学、语法特性以及如何利用Swift进行高效开发。我们将通过实际代码示例,展示Swift语言的强大功能和优雅简洁的编程风格,引导读者理解并运用Swift解决实际问题。
|
安全 Swift iOS开发
探索iOS开发之旅:Swift语言的魅力与挑战
【9月更文挑战第21天】在这篇文章中,我们将一起潜入iOS开发的海洋,探索Swift这门现代编程语言的独特之处。从简洁的语法到强大的功能,Swift旨在让开发者能够以更高效、更安全的方式构建应用程序。通过实际代码示例,我们会深入了解Swift如何简化复杂任务,并讨论它面临的挑战和未来的发展方向。无论你是初学者还是有经验的开发者,这篇文章都将为你提供新的视角和知识。
317 5
|
9月前
|
缓存 移动开发 JavaScript
如何优化UniApp开发的App的启动速度?
如何优化UniApp开发的App的启动速度?
1547 139
|
9月前
|
移动开发 JavaScript weex
UniApp开发的App在启动速度方面有哪些优势和劣势?
UniApp开发的App在启动速度方面有哪些优势和劣势?
679 137

热门文章

最新文章