如何将一个应用程序添加到 App Store,而在这个应用程序中,一个用于 ios7,一个用于其余的?

     2023-03-16     20

关键词:

【中文标题】如何将一个应用程序添加到 App Store,而在这个应用程序中,一个用于 ios7,一个用于其余的?【英文标题】:How can I add one app to the App Store and in this app there is one for ios7 and one for the rest? 【发布时间】:2013-06-18 17:39:30 【问题描述】:

您好,因为 ios 7 中有很多东西在 iOS 6 及周边地区无法正常工作。我想知道是否有可能在同一个应用程序下的 App Store 上有两个版本的应用程序。是否有可能让拥有 iOS 6 的人下载应用程序时,他们会获得针对 ios 6 优化的应用程序,而当拥有 ios 7 的人下载应用程序时,他们会获得针对 iOS 7 优化的应用程序。我必须创建吗?应用商店上有两个不同的应用?

请帮忙。

【问题讨论】:

如何重用代码并使用 iOS 7 的特定部分?提交两个应用似乎不是一个好主意。 为什么你认为你需要两个应用程序?没有理由为什么单个应用程序不能正确支持 iOS 7 一直到 iOS 4.3。自 iOS 3 推出以来,人们一直在一个应用程序中支持多个版本的 iOS。 如果对您有帮助,请接受我的回答。如果您仍然需要清除更多内容,请告诉我,以便我改进。 【参考方案1】:

您不能为一个应用(单个构建文件)提交两个不同的版本,想想看 - 这没有任何意义。 您可以在应用程序内部检查它运行的设备上的 iOS 版本,但这样做非常糟糕,因为这有一天会损坏

建议在你愿意使用一个新特性之前检查一下这个特性是否在你运行的版本上实现,例如你想检查你是否可以使用:

[[AVAudioSession sharedInstance] requestRecordPermission];

你应该检查这个是否为真(只有当这个函数被实现时才应该返回真):

[[AVAudioSession sharedInstance] respondsToSelector:
                                 @selector(requestRecordPermission)]

使用它的最大优点是它可以在 iOS 7.x 上运行,并且如果它将在 iOS 8.x 上得到支持等等,它也会返回 true。

另一个很大的优势是,您只会有专门针对操作系统支持的小部分,而不是每个版本的完整应用程序(更易于维护)。

:您应该注意要链接的库。如果您使用的是以前的 iOS 版本不支持的新库,您应该将它们标记为“可选”而不是“必需”(这是默认设置)。

最后一件事,如果您确实想为每个操作系统创建单独的应用程序(如果我没有成功解释它的错误),您可以随时添加一个新目标(只需复制您正在处理的目标)并设置相应的参数。请注意,Apple 只允许您限制可以下载该应用程序的最旧版本而不是最新版本,因此使用 iOS 7 的用户可能能够下载专用于 iOS 6 的应用程序,因此它也应该可以工作(也许不是所有伟大的 7 功能,但必须工作)。

希望对大家有所帮助,如有不足请在下方评论。

【讨论】:

【参考方案2】:

您不能在 App Store 上以相同的名称拥有两个版本的应用。

检查@rmedy 评论和@ldan 答案以获得更好的选择来构建不同版本的应用程序。

作为最后的手段,您可以在您的应用中查看 iOS 版本以做出决定。以下是一些可能有用的宏:

#define SYSTEM_VERSION_EQUAL_TO(v)                  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedSame)
#define SYSTEM_VERSION_GREATER_THAN(v)              ([[[UIDevice currentDevice]   systemVersion] compare:v options:NSNumericSearch] == NSOrderedDescending)
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)  ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN(v)                 ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] == NSOrderedAscending)
#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v)     ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedDescending)

【讨论】:

检查系统版本很少是个好主意。检查实际功能、类或方法总是更好。 同意最好检查特性、类或方法。您应该检查 iOS 版本作为最后的手段,例如如果 api 的行为在最新的 iOS 版本中发生变化/损坏,并且雷达已填充但尚未修复。

使用越狱调整/脚本将新的 UIBackgroundMode 添加到 App-Store 应用程序

】使用越狱调整/脚本将新的UIBackgroundMode添加到App-Store应用程序【英文标题】:AddnewUIBackgroundModetoanApp-StoreappwithJailbreaktweak/script【发布时间】:2013-11-2809:51:55【问题描述】:我创建了一个App-Storeapp,现在想做一个调整,让它使用V... 查看详情

将应用上传到 App Store

...所有的iTunesConnect内容(快照、描述、标签等)并下载了应用程序加载器,但它要求我提供.app文件,我不知道如何获取.来自我的Xcode项目的app文件,或者如果我需要证书来执行此操作,或者有人可以帮助我吗?【问题讨论】:.app... 查看详情

如何以不同的 iPhone/ipad 尺寸将我的应用程序上传到 App Store

】如何以不同的iPhone/ipad尺寸将我的应用程序上传到AppStore【英文标题】:HowtouploadmyapptotheAppStoreindifferentiPhone/ipadsizes【发布时间】:2015-03-3117:58:23【问题描述】:我制作了一个新应用程序,但仅针对iPhone5尺寸不使用“自动布局... 查看详情

如何将 iOS 应用程序从其他帐户上传到 App-Store?

】如何将iOS应用程序从其他帐户上传到App-Store?【英文标题】:HowtouploadiOSapplicationtoApp-StorefromotherAccount?【发布时间】:2013-03-1320:43:41【问题描述】:我编写了一些iOS应用程序并使用了我的私人许可证:开发配置文件分发配置文... 查看详情

App Store Connect 无法将构建添加到外部测试人员或提交构建

...estFlight并尝试提交我的构建,以便外部测试人员可以测试应用程序,但问题是我没有提交构建的选项,也没有删除旧构建的选项,我有两个状态为“缺少合规性”的构建 查看详情

如何将实现的“in App”上传到App Store?

】如何将实现的“inApp”上传到AppStore?【英文标题】:Howtouploadtheimplemneted"inApp"intoAppStore?【发布时间】:2012-06-2306:38:36【问题描述】:我已经完成了inApp购买的必要编码,我在沙盒环境中检查了它,它运行良好。但是当... 查看详情

如何添加 App Store 产品页面横幅

...时间】:2021-08-1801:11:41【问题描述】:我将Unity用于我的应用程序。浏览AppStore我看到了一些应用,例如“谷歌浏览器”,它们在商品详情中的图标上方有背景。我的问题是,如何将它用于我的应用程序?在Android上很容易,可以... 查看详情

将 Mac 催化剂二进制文件上传到 App Store 连接时出现问题

...我已将Mac功能添加到已在AppStore(iOS和iPad版本)上的我的应用程序中,并且我还从AppStoreConnect为我的应用程序添加了一个新平台。但是,我无法验证或上传Mac平台(Cata 查看详情

iOS,App Store Connect:如何将 2 个应用程序目标部署到应用商店连接?

】iOS,AppStoreConnect:如何将2个应用程序目标部署到应用商店连接?【英文标题】:iOS,AppStoreConnect:Howtohave2targetsofapplicationdeployedtoappstoreconnec?【发布时间】:2018-10-1607:27:38【问题描述】:我想将2个目标部署到应用商店连接。一种... 查看详情

如何将来自其他开发者的应用程序的新版本发布到 Apple App Store 和 Google Play?

】如何将来自其他开发者的应用程序的新版本发布到AppleAppStore和GooglePlay?【英文标题】:HowdoIpublishanewversionforanappfromanotherdevelopertoAppleAppStoreandGooglePlay?【发布时间】:2020-11-2106:13:21【问题描述】:我的客户要求我发布一个适用... 查看详情

如何在将应用程序提交到 App Store 时修复错误 ITMS 90032、90022、90363、90394?

】如何在将应用程序提交到AppStore时修复错误ITMS90032、90022、90363、90394?【英文标题】:HowtofixERRORITMS90032,90022,90363,90394,onsubmittingapptoAppStore?【发布时间】:2016-02-1914:28:31【问题描述】:我尝试将我的应用程序的新版本提交到AppSto... 查看详情

如何使用 OneSignal 插件将应用上传到 App Store?错误 ITMS-90362 “MinimumOSVersion”无效

】如何使用OneSignal插件将应用上传到AppStore?错误ITMS-90362“MinimumOSVersion”无效【英文标题】:HowtouploadapptotheAppStorewithOneSignalplugin?ERRORITMS-90362"MinimumOSVersion"invalid【发布时间】:2017-09-2517:29:53【问题描述】:我遇到了一些... 查看详情

如何将 2 个属性从我的 App Store 版本交换到我当前的开发版本?

】如何将2个属性从我的AppStore版本交换到我当前的开发版本?【英文标题】:HowcanIexchange2attributesfrommyAppStoreversiontomycurrentdevelopmentversion?【发布时间】:2013-01-2310:08:07【问题描述】:如何将我的AppStore版本中的2个属性交换为我当... 查看详情

如何从 watchOS 应用打开 App Store?

...ppStore。如何做到这一点?我尝试使用WatchConnectivity。在iOS应用程序中,我有以下代码:funcsession(_session:WCSession 查看详情

用于将应用程序分发到 App Store 的 iOS 公司名称

】用于将应用程序分发到AppStore的iOS公司名称【英文标题】:iOScompanynamefordistributingappstoAppStore【发布时间】:2012-07-0509:58:16【问题描述】:我浏览了SO和Google,但找不到明确而具体的答案,也许它应该是显而易见的!但是,我之... 查看详情

如何将水平分页捕捉到 App Store 等多行集合视图?

】如何将水平分页捕捉到AppStore等多行集合视图?【英文标题】:Howtosnaphorizontalpagingtomulti-rowcollectionviewlikeAppStore?【发布时间】:2018-06-2422:30:18【问题描述】:我想在多行AppStore集合视图中复制分页:到目前为止,我已经将它设... 查看详情

如何使用在我的客户的 iTunes Connect 中设置为 App Manager 角色的帐户将 iOS 构建上传到 App Store?

...6-06-0806:14:16【问题描述】:我需要为我的客户上传一个iOS应用程序。我 查看详情

将 iOS 应用程序大小减小到 App Store

】将iOS应用程序大小减小到AppStore【英文标题】:DecreaseiOSApplicationsizetoAppStore【发布时间】:2014-05-2916:45:26【问题描述】:我正在尝试在AppStore中提交一个应用程序,如果可能的话,我需要稍微减少它的内存。我尝试了一种我将... 查看详情