简体   繁体   English

“此代码适用于与此设备不兼容的应用。”

[英]“This code is for an app that is not compatible with this device.”

We have an app in the Apple App Store that we can't seem to get installed on a Verizon iPhone (from the App Store, not Xcode) . 我们在Apple App Store中有一个应用程序,我们似乎无法安装在Verizon iPhone上(来自App Store,而不是Xcode) This may have nothing to do with the fact that it's a Verizon device, but that is the main difference I see between it and the devices I can get to run it. 这可能与它是Verizon设备这一事实无关,但这是我在它和我可以运行它的设备之间看到的主要区别。

We are attempting to install the app using a promotional code , but we receive an error when hitting Redeem , as seen in this picture: (promo code blocked out) 我们正在尝试使用促销代码安装应用,但是我们在点击兑换时收到错误,如下图所示:( 促销代码被屏蔽掉)

赎回错误

ERROR: This code is for an app that is not compatible with this device. 错误: 此代码适用于与此设备不兼容的应用。 You can redeem it on your desktop computer or a compatible device. 您可以在台式计算机或兼容设备上进行兑换。

The error device is an iPhone 4 (Verizon) running iOS 4.2.8 . 错误设备是运行iOS 4.2.8的iPhone 4(Verizon)。 This error was received when the app was built for 3.x and the assumption was that Verizon devices would not accept apps not built with at least SDK 4. 在为3.x构建应用程序时收到此错误,并且假设 Verizon设备不接受至少不使用SDK 4构建的应用程序。

However, the app was recently updated (yesterday) to use the 4.3 SDK . 但是,该应用程序最近更新(昨天)使用4.3 SDK The app has its deployment target set to iOS 3.1 and has been successfully installed and tested on a device (iPhone 3G AT&T) running this version. 该应用程序的部署目标设置为iOS 3.1,并已在运行此版本的设备(iPhone 3G AT&T)上成功安装和测试。 This latest version has also been successfully retrieved and tested on an iPhone 4 (AT&T) running 4.3. 这个最新版本也已经在运行4.3的iPhone 4(AT&T)上成功检索和测试。 We were under the impression that every version in-between (3.1 - 4.3) would then be compatible, perhaps this is not the case? 我们认为中间的每个版本(3.1 - 4.3)都是兼容的,也许情况并非如此?

Unfortunately, the Verizon device is not available for Xcode deployment nor ad hoc distribution. 不幸的是,Verizon设备不适用于Xcode部署或临时分发。

Now for the actual development question: Is there a build setting that can explain this behavior? 现在针对实际开发问题:是否有可以解释此行为的构建设置? Failing that, I would like to determine if the error is limited to the specific device or all devices either running 4.2.8 or Verizon specific hardware. 如果不这样做,我想确定错误是否仅限于特定设备或运行4.2.8或Verizon特定硬件的所有设备。

I would be willing to share a promotional code or two to people running 4.2.8 (or later) on a Verizon device (This is not a bribe. You are welcome to keep the app of course, but I am offering this only for installation testing purposes, not for promotional reasons). 我愿意与Verizon设备上运行4.2.8(或更高版本)的人分享一两个促销代码(这不是贿赂。当然欢迎您保留应用程序,但我只提供安装测试目的, 不是出于促销原因)。 If you think you can help, please indicate your interest in the comments. 如果您认为可以提供帮助,请表明您对评论的兴趣。 I have not mentioned the app here, because I don't want to unnecessarily spam my product if the answer can be determined without it, but I have no problem sharing that information if required. 我没有在这里提到应用程序,因为如果没有它可以确定答案,我不想不必要地垃圾邮件我的产品,但如果需要,我没有问题共享该信息。


Update: 更新:

I followed lxt's suggestion and waited to see if it was a caching issue with the App Store servers. 我按照lxt的 建议 ,等着看是否是App Store服务器的缓存问题。 Unfortunately, 40 hours after I was informed the update was ready for sale, we are still receiving the same error. 不幸的是,在我被告知更新已准备好出售40小时后,我们仍然收到同样的错误。

I have found the following threads in the Apple Developer forums confirming this problem is not limited to our app: (A login may be required) 我在Apple Developer论坛中发现以下主题确认此问题不仅限于我们的应用程序:( 可能需要登录)

I have submitted a bug report to Apple (ID 9905790) concerning the issue. 我已向Apple(ID 9905790)提交了有关此问题的错误报告。 At this time, I am unsure if this issue is related to Verizon devices or iOS 4.2.8. 目前,我不确定此问题是否与Verizon设备或iOS 4.2.8有关。 Once I receive a definitive answer I will post it. 一旦我收到明确的答案,我会发布。 For now, a workaround that appears to be working for others which we have not yet tried, is to redeem and install through iTunes. 目前,似乎对我们尚未尝试的其他人有效的解决方法是通过iTunes进行兑换和安装。

Since this appears to only affect Promo Code redemption and NOT store purchases, the issue has lost much of its urgency. 由于这似乎只影响促销代码兑换而非商店购买,因此该问题已经失去了很多紧迫性。 However, if anyone is able to provide more information or a solution, it is still very much appreciated. 但是,如果任何人能够提供更多信息或解决方案,我们仍然非常感激。


Update: 更新:

I can confirm that redeeming the codes through iTunes and then installing to a Verizon device works fine. 我可以确认通过iTunes兑换代码然后安装到Verizon设备工作正常。 This means the problem is not with the app or the build settings, but with the Verizon device App Store redemption. 这意味着问题在于应用程序或构建设置,而在于Verizon设备App Store的兑换。

I have received one reply from Apple in response to my bug report asking me to verify if this occurs on 5.0b5. 我收到Apple的回复,回复我的错误报告,要求我验证这是否发生在5.0b5。 Unfortunately, as previously mentioned, we do not have developer access to the Verizon device (which is the entire reason for using a promotional code in this instance). 不幸的是,如前所述,我们没有开发人员访问Verizon设备(这是在此实例中使用促销代码的全部原因)。 I have asked them to confirm if this is a Verizon/iOS specific issue and will update this issue when I have more information. 我已要求他们确认这是否是Verizon / iOS特定问题,并在我获得更多信息时更新此问题。

According to the Apple documentation, it's just a matter of setting the deployment target: 根据Apple文档,只需设置部署目标:

You have indicated that your binary requires iOS 4.3 or later. 您已指出您的二进制文件需要iOS 4.3或更高版本。 Apps that require iOS 4.3 or later will not be available to Verizon iPhone users. Verizon iPhone用户无法使用需要iOS 4.3或更高版本的应用。 If your app could be compatible with earlier iOS versions, you may want to reject your binary and upload a new one that indicates the earliest compatible iOS. 如果您的应用程序可以与早期的iOS版本兼容,您可能希望拒绝二进制文件并上传一个新的二进制文件,以指示最早的兼容iOS。

That's the message that's normally appended to App Store emails when you have an app waiting for review. 当您有等待审核的应用时,这通常会附加到App Store电子邮件中。

So in theory it should 'just work'. 所以在理论上它应该“正常工作”。

However, what would be interesting to know would be: 但是,有趣的是:

  • Did you produce the promotional code before updating the app? 在更新应用之前,您是否制作了促销代码?
  • If so, do you get the same results with a promo code generated after updating the app (you never know with the App Store / iTunes Connect...) 如果是这样,你在使用更新应用程序后生成的促销代码获得相同的结果(你永远不会知道App Store / iTunes Connect ......)
  • After 24 hours are you still seeing the same issue? 24小时后你还能看到同样的问题吗? (24 hours being the normal App Store 'refresh period') (24小时是正常的App Store'刷新期')

Sorry, I could not provide you with more concrete answers. 对不起,我无法为您提供更具体的答案。 At times it does feel like the App Store is held together with string, so it wouldn't be completely surprising if it was some value being kept around that should have been knocked back when you updated the app. 有时它确实感觉App Store与字符串一起保存,所以如果它保留了一些值,当你更新应用程序时应该被击倒,那就不足为奇了。

That said, it's a little strange that your app wouldn't work on the Verizon phone when you built it for 3.x. 也就是说,当你为3.x开发它时,你的应用程序无法在Verizon手机上运行,​​这有点奇怪。 Why is the Verizon device not available for Xcode deployment? 为什么Verizon设备无法用于Xcode部署? Is it because you don't have one to hand (understandable), or is it something else? 是因为你没有一个人可以理解(或者可以理解),还是其他什么? There's no reason why it shouldn't be able to have ad-hocs thrown on it. 它没有理由不能在它上面放置ad-hoc。

This is pure speculation: 这是纯粹的猜测:

Since there's a different build of iOS for the Verizon phone, maybe under the hood all apps on the appstore are available twice - one time signed for use on the AT&T version of iOS and one time signed for the Verizon version. 由于Verizon手机的iOS版本不同,因此appstore上的所有应用程序都可以使用两次 - 一次签名用于iOS的AT&T版本,一次签署用于Verizon版本。 The Appstore would deliver the appropriate version depending on your device. Appstore将根据您的设备提供适当的版本。

If this would be the case and since redemption codes existed before the Verizon line of phones, it may be that redemption codes point to one version of the app only, leading the appstore to believe it is incompatible when redeemed on the "wrong" phone. 如果情况确实如此,并且由于兑换代码存在于Verizon系列手机之前,可能是兑换代码仅指向应用程序的一个版本,导致appstore认为在“错误”手机上兑换时不相容。

End of speculation. 猜测结束了。

I'd suggest instructing your friend to buy the app (if it's not too costly) and paying him the money back. 我建议指示你的朋友购买应用程序(如果它不是太昂贵)并支付给他钱。 If this works, then cleary what we're dealing with is a bug in Apples gift code system and you should be filing a bug report about this. 如果这样可行,那么我们正在处理的问题就是苹果礼品代码系统中的一个错误,你应该提交一份有关此问题的错误报告。

Btw: you're not alone with this problem. 顺便说一句:你并不孤单。 Although they didn't resolve it, the guys on this forum mention the exact same situation. 虽然他们没有解决它,但这个论坛上的人提到了完全相同的情况。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM