天道酬勤,学无止境

如何为 iOS 应用内购买创建促销代码(How to create a promotion code for iOS in-app purchases)

问题

截至今年 2014 年 5 月左右,在 Google 上搜索“ios in app purchase促销代码”,会发现很多新闻网站都在报告同样的事情——Apple 似乎正在努力允许促销代码用于测试应用内购买,截图证明了这一点来自EA游戏。

我的问题是; 有人知道怎么做吗? 我登录了新的 iTunesConnect 界面,但找不到任何链接,Apple 文档中也没有出现任何我能找到的内容。

理想情况下,我希望为每月订阅创建一个代码,但它们可能只允许用于消耗品。 由于缺乏有关 IAP 促销代码的实际信息,我的猜测是该功能尚未正式推出,Apple 已邀请 EA 游戏对其进行测试。

回答1

正如@Christoph Wimberge 指出的那样,这是旧消息。 苹果现在支持这一点。

您目前无法正式获得 IAP 的促销代码。 请参阅此处 https://developer.apple.com/library/prerelease/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/ProvidingPromoCodes.html。 如果您正在测试,那么您应该在用户和角色下创建沙盒测试员。 根据您处理 IAP 的方式,这很可能用作各种促销代码。 因此,例如,如果您使用 IAP 在 NSUserDefaults 或 plist 文件中设置标志,那么这将用作促销代码。 您必须指示用户以测试用户身份登录以进行购买。 即使您在设置标志后删除测试用户,用户也可以使用 IAP,只要他们没有完全删除该应用程序,并且假设您没有像使用 App Store 数字收据来确认购买那样改变处理 IAP 的方式. 当然,如果您担心破解者,那么您可能不会将成功的 IAP 存储为标志,尤其是在用户默认值中,任何人都可以随意更改该值。 但是对于不是游戏的应用程序,这可能不是一个大问题。 希望有帮助。

在此处输入图片说明

回答2

Apple 今天告诉我们,他们从不允许用户输入代码、使用 Q 代码或其他网关密钥来访问任何东西。 相反,她说我们应该使用仅限会员的网页(即需要登录)来接受兑换代码并通过我们的后端关联内容。 当用户返回应用程序时,内容将可用。

回答3

如果 Apple 为 IAP 启用代码,您可以提供来自另一个平台的代码的销售,这将解锁 IAP。 苹果会做所有的工作,但不会获得任何回报。 此外,突然之间,您为促销代码创建了一个山寨市场,就像 g2a.com 为 Steam 密钥所做的那样。

虽然 Apple 可能拥有该功能,但目前似乎是 EA 独有的。

目前,您需要弄清楚如何支持应用商店之外的促销项目。

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 解决缺少应用内购买促销代码的方法(Workaround to lack of promotional codes for in-app purchases)
    问题 苹果不提供应用内购买的促销代码。 让用户免费试用通过应用程序内购买解锁的功能或内容,同时遵守苹果公司开发人员指南的最佳方法是什么? 这样做的目的是允许一组特殊的用户(审阅者,主要支持者等)无需付费即可访问作为应用内购买提供的内容或功能。 解决此限制的应用示例将不胜感激。 回答1 您可以提交应用程序的版本,该版本的所有功能默认情况下均已解锁。 提交的应用程序具有发布日期,您可以在提交时设置发布日期(我相信您也可以随时更改),您可以简单地阻止该应用程序在App Store中发布,但仍可以为其提供促销代码。 促销代码适用于特定的应用程序版本,因此当用户将促销代码兑换为尚未发布的应用程序版本时,他们将下载预发行版本。 来源 回答2 像共享软件一样? 在应用内购买之前启用了部分功能的应用? 苹果现在允许它。 举个例子。 我们有一个益智游戏,具有12个难度级别。 其中4或5个是免费提供的,其他的则在应用程序内购买后会解锁。 回答3 我现在正在努力。 我正在做的是生成一个随机代码/指南,并将其存储在我的webService的DB中。 然后将该代码提供给您想要的人。 他们输入该代码,然后调用传递该代码和设备UDID的Web服务。 webService返回另一个代码,指示该促销代码是否有效。 如果有效,则该应用会将购买的商品添加到NSUserDefaults或Core Data中
  • 有没有一种方法可以为人们提供促销/优惠券代码,以供他们免费下载您的应用程序?(Is there a way to give promo/coupon codes for people to download your app for free?)
    问题 我需要一种共享我的应用程序的方法,以使人们可以使用优惠券代码或促销代码或结帐代码免费下载该应用程序。 我想将代码发布到板上,并在一段时间后使其无效。 我的应用使用许可和应用内结算,因此邮寄APK可能不合适。 我看到的最后一个问题是6个月大了,所以我不知道是否有更新的解决方案。 回答1 Google最近启用了对付费应用程序和应用内购买促销代码的支持。 您首先需要通过Google Play商店开发者控制台设置促销活动: https://support.google.com/googleplay/android-developer/answer/6321495 或通过应用促销中的应用购买代码添加支持: https://developer.android.com/google/play/billing/billing_promotions.html 但是请注意,可以创建的代码数量和类型受到限制: 对于每个应用程序,您每季度最多可以创建500个促销代码。 要达到该限制,您可以使用付费应用和应用内促销代码的任意组合。 您可以通过以下几种方式达到应用的促销代码限制: 500个付费应用促销代码,或一种应用内商品的500个促销代码,或 250个付费应用促销代码+一种应用内商品的250个促销代码,或者五个应用内商品的100个促销代码 回答2 无法使用Play商店中设置的当前功能来执行此操作。
  • 允许用户在 Android 中免费下载自己的付费应用(Allow users to download your own paid app for free in Android)
    问题 我在 Play 商店中有一个付费应用程序(Profile Widget,以防万一有人想知道 ;)),我想允许一些用户(朋友或没有信用卡的人)免费下载它。 当然,我可以只向他们发送 APK,但他们不会自动获取更新,并且每次更新应用程序时,我都必须再次向他们发送所有 APK 文件。 而且,通过使用这种方法,任何有权访问 APK 文件的人都可以免费安装该应用程序。 我看到通过使用 Android 许可库,您可以让一些用户绕过许可检查,但我希望该应用程序在 Play 商店中为他们显示为“已购买”,我认为这不会做到。 我搜索了 Stack Overflow,但我找到的解决方案(比如创建一个单独的 APK 并从“真实”应用程序检查它的存在)都没有处理自动更新部分。 有没有人为此找到好的解决方案? 提前致谢! 回答1 您现在可以在 Google Play 上生成促销代码并将其分发给现有用户和新用户,以提高参与度。 在开发者控制台的“促销”标签下,您可以为您的应用、游戏和应用内产品设置促销代码,以在您自己的营销活动中分发(每个应用每季度最多 500 个代码)。 考虑使用促销代码来奖励忠实用户并吸引新客户。 参考:1)http://android-developers.blogspot.in/2016/01/create-promo-codes-for-your-apps-and-in
  • 如何为C#应用程序创建产品密钥?(How can I create a product key for my C# application?)
    问题 如何为C#应用程序创建产品密钥? 我需要创建一个每年更新的产品(或许可证)密钥。 另外,我需要为试用版创建一个。 有关的: 如何最好地混淆我的C#产品许可证验证码? 您如何保护您的软件免于非法分发? 回答1 您可以执行类似创建记录的操作,其中包含要对应用程序进行身份验证的数据。 这可以包括您想要的任何内容-例如启用程序功能,有效期,用户名(如果您希望将其绑定到用户)。 然后使用带有固定密钥的某种加密算法对其进行加密或对其进行哈希处理。 然后,您只需在程序中进行验证即可。 分发许可证文件(在Windows上)的一种方法是将其提供为更新注册表的文件(节省用户必须键入的文件)。 但是要小心错误的安全感-迟早有人会简单地修补您的程序以跳过该检查,并分发修补的版本。 或者,他们将制定出可以通过所有检查并分发该密钥或使时钟回溯日期等的密钥。不管您如何计划复杂,您所做的任何事情最终都会通过默默无闻而安全,并且它们将始终能够做到这一点。 即使他们不会有人愿意,也将分发被黑客入侵的版本。 即使您提供了加密狗,也同样适用-如果有人愿意,他们也可以为此签出支票。 对您的代码进行数字签名无济于事,他们可以删除该签名,也可以辞职。 通过使用防止调试器等程序运行的技术,您可以使事情复杂一些,但是即使这样也不是防弹的。 因此,您应该使它变得足够困难,以至于诚实的用户不会忘记付款。 同样要非常小心
  • 付费应用可以免费进行Alpha / Beta版测试吗(Can a paid app be tested in alpha/beta for free)
    问题 我在SO上看到了很多与此有关的问题,他们似乎都说,如果该应用程序是付费应用程序,那么Alpha和Beta测试人员也必须付费才能对其进行测试。 但是,我天真地希望我所读的答案中有99%来自2013年中期Alpha / Beta测试功能首次问世时,也许Google从那时起一直在倾听人们的意见并做出改变。 如果没有,我有什么选择? 我看到他们如下 我想我可以自掏腰包退还别人的钱,但这意味着Google将保留他们30%的钱,因此每位测试人员将花费我30%的应用程序费用。 我可以通过电子邮件将所有的APK发送给他们,但是那样的话,我就必须在每次更新时都这样做,而不是让play store替我完成。 另外,如果我有很多测试人员,发送多封电子邮件可能会很烦人(当然,除非我要做一个巨大的密件抄送) 我可以在商店中以某种方式设置该应用程序的两个版本,一个称为免费版本,另一个称为付费版本。 仅将免费版本提供给测试人员,然后删除该应用程序,并将最终apk推送至付费应用程序。 我认为3.是最好的选择,但是比这个大概很常见的情况要麻烦的多。 另外,我可以直接在Google上与谁联系? 游戏商店小组有人吗? 您甚至如何找到该地址!? 更新:现在,当我这样做时,我将创建促销代码并将其提供给我的个人Beta测试人员。 每个人的时间不超过20秒,因此对于我的人数来说,我很满意 回答1 我遇到了同样的问题
  • Change paid app to free but know if user previously purchased it(Change paid app to free but know if user previously purchased it)
    问题 我正在考虑将我的付费iOS应用更改为免费,使其ad based ,并具有in-app purchase选项来删除广告。 如果我只是启动该应用程序,这听起来是个好主意,但是我们有超过3万次付费下载,而且我不希望这些用户在更新到免费的新版本时看到这些广告。 我在这里有什么选择吗? 回答1 从iOS 7开始,可以使用适当的收据验证来完成此操作。 在iOS 7下,您可以获得购买的应用程序的收据。 收据中的部分数据包含有关用户原始购买的应用程序版本的信息。 您可以查看该版本,如果它是从发行更新之前的版本开始免费提供IAP,则可以选择为用户提供全部功能,而无需用户再次购买升级。 当然,如果您希望更新后的应用程序可以在iOS 6下运行,则不可以。 有关收据验证的详细信息,请参见《收据验证编程指南》。 回答2 尝试获取所有收据并通过以下数据进行分析: "expires_date" = "2017-09-24 11:25:19 Etc/GMT"; "original_purchase_date" = "2017-09-24 11:20:21 Etc/GMT"; "product_id" = "com.yourapp.service"; 1.从应用商店获取所有用户的收据 + (NSArray*)all_receipts{ // Load the receipt from the app
  • 通过促销代码进行的应用内购买返回空的开发人员负载字符串(In-app purchases made via promo codes return empty developer payload string)
    问题 我有一个发布到 alpha 频道的应用程序,其中有一个应用程序内(非)托管项目,价格为 1 美元。 当我正常购买时,即使用信用卡/借记卡谷歌返回正确的开发者负载字符串,但如果我选择“兑换”促销代码并输入所述代码,谷歌返回一个空的开发者负载字符串,因此身份验证失败'onIabPurchaseFinished()'。 我应该提到的是,只有当我选择从应用程序的购买流程中兑换代码时才会发生这种情况,如果我先打开 Play 商店,兑换代码,然后再回来打开应用程序,一切都会完美无缺。 这是谷歌方面的错误吗? 编辑:Play Store 的事情是预料之中的,因为它无法知道您的有效负载,并且无需检查即可完成购买。 回答1 这个问题是在 google 的 android-play-billing 示例存储库上打开的。 看起来它被忽略了很长时间,最终被此评论关闭。 总之,他们有以下建议。 我们审查了我们的指南和内部 API,并且由于应用内结算 API(包括促销代码)的所有功能都不支持 developerPayload,因此我们删除了将其用作安全检查的建议。 正如您在我们的文档中所见,在实施应用内结算 (https://developer.android.com/google/play/billing/billing_integrate.html) 页面上,我们添加了一条建议: 注意:请勿将
  • Django,独特的字段生成(Django, unique field generation)
    问题 我有一个促销模型,其中包含促销代码和购买模型类的外键。 这是模型: class Promotion(models.Model): purchase = models.ForeignKey('Purchase') promotion_code = models.CharField(max_length=20) def promotion_code_generate(self): #returns a string based promotion code with 7 length from django.conf import settings import random, string return ''.join(random.choice(string.ascii_uppercase + string.digits) for x in range(7)) class Meta: unique_together = (("purchase", "promotion_code"),) 现在我希望我的unique_together = (("purchase", "promotion_code"),)字段对于每次购买都是唯一的,为此我已将unique_together = (("purchase", "promotion_code"),)到类元。
  • 如何为Kubernetes创建本地开发环境?(How to create a local development environment for Kubernetes?)
    问题 Kubernetes似乎只不过是将容器部署到集群云中。 似乎没有碰到的是开发和暂存环境(或类似环境)。 在开发过程中,您希望通过一些重要的更改尽可能地接近生产环境: 本地部署(或至少在您只有您可以访问的地方) 在页面刷新上使用最新的源代码(假设其网站;理想情况下,在本地文件保存上页面自动刷新,如果您挂载源代码并使用诸如Yeoman之类的东西,则可以完成此操作)。 同样,人们可能希望非公共环境进行持续集成。 Kubernetes是否支持这种开发环境,还是必须构建某种东西,以希望在生产期间它仍然可以工作? 回答1 更新(2016-07-15) 随着Kubernetes 1.3的发布,现在推荐使用Minikube在本地计算机上运行Kubernetes进行开发。 您可以通过Docker在本地运行Kubernetes。 一旦节点运行,就可以启动具有简单Web服务器的Pod,并从主机上装入卷。 当您点击Web服务器时,它将从该卷中读取内容;如果您更改了本地磁盘上的文件,则它可以提供最新版本。 回答2 我们一直在研究一种工具来做到这一点。 基本思想是,您拥有远程Kubernetes集群,有效地是一个暂存环境,然后在本地运行代码,并将其代理到远程集群。 您可以获得透明的网络访问,环境变量的复制,对卷的访问……与远程环境尽可能接近,但是您的代码在本地运行并在您的完全控制之下。 这样
  • 如何为Android应用实现Google Play许可?(How can I implement Google Play Licensing for an Android app?)
    问题 我看到了库存的Android-Developer授权库说明,但是该概述似乎省略了该过程中的几个关键步骤,并且未能完全说明如何使某些功能正常运行。 有人可以提供一组明确的操作来使许可库在Android应用程序上建立,以便其检查以确保用户在允许使用前已为Google Play中的应用程序付费吗? 回答1 我已经在我的应用程序中实现许可一段时间了,终于使它工作了。 我想分享一些我认为对入门有用的东西,以及与大家一起发现的一些问题和解决方案。 我在下面链接的android dev教程还可以,但是对我来说并不是那么有用,所以我决定制作一个教程。 享受,希望对您有所帮助! 在此处链接到开发者页面。 1.入门 您将需要的东西。 1.1您的Base64唯一应用程序密钥 如何获得: 一种。 转到您的开发者控制台。 关联。 b。 如果尚未为您的应用程序创建应用程序草稿,请立即执行。 C。 创建草稿后,最好将.apk上传为Alpha或Beta。 保留未发布的状态。 d。 点击Services & APIs e。 向下滚动并找到YOUR LICENSE KEY FOR THIS APPLICATION F。 将密钥复制到您的应用中,如下所示: private static final String BASE64_PUBLIC_KEY = "YOUR LICENSE KEY FOR THIS
  • 如何为 Amazon IAP 设置 ProGuard?(How to set up ProGuard for Amazon IAP?)
    问题 我正在尝试设置一个集成了 Amazon IAP 的基本 ProGuard。 但是,当我尝试导出 APK 时,出现以下错误: [2012-06-17 10:59:44 - sc] Proguard returned with error code 1. See console [2012-06-17 10:59:44 - sc] Unexpected error while performing partial evaluation: [2012-06-17 10:59:44 - sc] Class = [com/amazon/inapp/purchasing/KiwiResponseHandler$PurchaseResponseHandlerRunnable] [2012-06-17 10:59:44 - sc] Method = [run()V] [2012-06-17 10:59:44 - sc] Exception = [java.lang.IllegalArgumentException] (Can't find common super class of [java/lang/String] (with 4 known super classes) and [com/amazon/inapp/purchasing
  • 如何在 Android 中集成应用内购买(How to integrate InApp Purchase in Android)
    问题 我想在我的应用程序中使用 inapp 购买。对于 inapp,我看过很多教程,我已经得到了演示项目。但问题是当我点击谷歌开发者控制台时,它要求付款而我只想要它的公钥无需付款,我不想在 googleplay 上发布我的应用程序。 我想做的两件事 如何为 InAPP Purchase api 创建我的公钥。 我可以从哪里获得 inapp 的密钥?/ 我在这里和这里看到了这个链接 这是图像片段 回答1 我想最好的教程是 developer.android.com 的教程。 所以首先阅读这个:http://developer.android.com/google/play/billing/billing_overview.html 你肯定想添加这个: <uses-permission android:name="com.android.vending.BILLING"/> 到您的清单,以便您稍后可以在开发者控制台上添加您的密钥 回答2 实际上,无论是否处于 Alpha 测试模式,您都无法在不发布应用商店的情况下测试 Google InApp 购买。 在你的情况下,如果你真的需要在你的应用程序中测试 InApp 购买,那么下面是这样做的步骤: 在 Google Play 管理中心注册(一次付费) 完成您的商家帐户(InApp 需要) 从播放开发者控制台获取记帐密钥(转到设置-> API
  • 如何为ios制作新的自定义情感键盘(有点像表情符号)[关闭](how to make new custom emotion keyboard for ios (somewhat like Emoji) [closed])
    问题 很难说出这里问的是什么。 这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。 如需帮助澄清此问题以便重新打开它,请访问帮助中心。 8 年前关闭。 我想做的是情感键盘,以便我可以在 iPhone 中使用它。 当我搜索时,我发现 Emoji 更适合用来表达想法。 简而言之,我想制作一个应用程序,它可以是键盘,可以在 Messenger 中的任何地方使用。 任何想法/输入如何继续创建像表情符号这样的应用程序? 回答1 Emoji字符是 unicode 系统的一部分,重点是你可以在每个平台上使用 unicode 字符,因为它是一个标准。 每个“图像”在 unicode 表中都有一个唯一的代码(如字母A有),当前平台显示所选字体集的当前字符。 制作随机图像(代码)是行不通的,因为它们不是标准的一部分,并且接收者必须拥有解码特殊图像(或代码)的密钥,就像 Skype 或 Messenger 在屋内所做的那样,但他们赢了'不是标准 unicode 表的一部分。 您可以在全球范围内使用标准的 unicode 字符,也可以仅在您的应用程序中使用您的特殊图像。 您可能会在这里找到更多关于Emoji字符集、unicode 代码的信息,它向您展示了大多数Emoji字符在不同平台上的显示方式。 这只是对它的快速回顾。
  • python:使用一等函数实现设计模式
    重构’策略’模式 如果合理利用作为一等对象的函数,某些设计模式可以简化.'策略’模式就是其中一个很好的例子. '策略’模式:定义一系列算法,把它们一一封装起来,并且使它们可以相互替换.本模式使得算法可以独立于使用它的客户而变化. 电商领域有个功能很明显可以使用’策略’模式,即根据客户的属性或订单中的商品计算折扣.假如一个网店制定了下述折扣规则: 有1000或以上积分的顾客,每个订单享5%折扣.同一订单中,单个商品的数量达到20个或以上,享10%折扣.订单中不同的商品达到10个或以上,享7%折扣. 简单起见,我们假定一个订单一次只能享用一个折扣. ’策略’模式涉及下列内容: 1.上下文: 把一些计算委托给’实现不同算法的可互换组件’,它提供服务.在这个电商示例中,上下文是Order,它会根据不同的算法计算促销折扣. 2.策略: 实现不同算法的组件的共同接口,在这个示例中,名为Promotion的抽象类扮演这个角色. 3.具体策略: '策略’的具体子类. 具体策略由上下文类的客户选择,在这个示例中,实例化订单之前,系统会以某种方式选择一种促销折扣策略,然后把它传给Order构造方法. 具体怎么选择策略,不在这个模式的职责范围内. ''' 遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025 寻找有志同道合的小伙伴,互帮互助
  • 如何为 Xamarin.iOS 创建 crashlytics 绑定?(How to create crashlytics binding for Xamarin.iOS?)
    问题 我已经下载了将 Crashlytics.framework 集成到 XCode 项目中的 Crashlytics 应用程序,它非常适合 XCode。 但据我所知,要构建 Xamarin.iOS 绑定,我需要静态库,并且在框架和 Crashlytics.app 内容中都找不到它。 只有“运行”可执行文件和标题。 我不知道如何在 Xamarin.iOS 下使用它。 顺便说一句,Xamarin 论坛上的 AndrewReed 设法以某种方式构建了 dll,所以这是可能的。 那么,如何为 Xamarin 创建 crashlytics 绑定? 回答1 AndrewReed 在 Xamarin 论坛上回答了这个问题: 与很多 sdk 一样,有时它们会捆绑一个文件夹而不是静态库,后者本质上是静态库。 将有一个可能没有扩展名的相当大的文件(这是您的 .a 文件),因此您可以将其重命名为 .a,然后将其包含在 xamarin 绑定项目中。 在文件夹中的头文件上运行sharpie 标记,这将生成您需要的文件。 注意一个问题,delegate 是 C# 中的保留字,因此您可能需要通过添加 @ 符号(到名称)来改变这一点,以允许您使用保留字。 所以我实际上做的是,在 xcode 中创建一个项目并运行 crashlytics 程序,然后将 crashlytics 框架添加到项目中。 在 finder
  • iPhone Store工具包“无法连接到iTunes Store”(iPhone Store Kit “Cannot connect to iTunes Store”)
    问题 我正在努力将应用内购买添加到我的应用中。 我能够接收productsRequest:didReceiveResponse方法,并接收产品数组。 我将SKPayment添加到SKPaymentQueue时出现了问题。 将产品添加到队列后,在paymentQueue:updatedTransactions方法中,事务始终具有状态SKPaymentTransactionStateFailed 。 我NSLog“ transaction.error”,这是它返回的:错误域= SKErrorDomain代码= 0 UserInfo = 0x165000“无法连接到iTunes Store” 我已经从“设置”应用程序中退出了商店,但是尝试在应用程序中购买产品后,它从未要求我使用测试帐户登录。 它只是由于上述错误而失败。 回答1 我认为您已经完成了标准的健全性检查:仔细检查代码,确认产品ID,将代码与应用内购买编程指南进行比较等。 这可能很荒谬,但是-如果您确定自己的代码正确-则对iPod进行硬重置(完全擦除)(设置=>常规=>重置=>擦除所有内容和设置)。 我为这个确切的问题困扰了好几个小时-事实证明我的代码是正确的,硬重置是解决方案。 回答2 我收到了SKPaymentTransactionStateFailed错误代码0“无法连接到iTunes Store ”
  • 如何为Rails应用程序创建应用程序范围内的条形路由?(How to create app-wide slug routing for Rails app?)
    问题 我正在使用的Rails应用程序中有许多不同的模型。 我已经看到许多站点使用了应用程序范围内的条形路由方法。 我的意思是什么? http://example.com/nick-oneill <-- This points to a User object http://example.com/facebook <-- This points to a Company object http://example.com/developers <-- This points to the users#index page 我知道to_param并在应用程序内创建对读者友好的段,但是我不知道为各种对象提供根级段的方法。 您可以认为这与Facebook的Graph API类似:对象类型不同,但是所有对象类型都位于https://graph.facebook.com/object-id 任何见解将不胜感激! 回答1 也许有办法用freindly_id做到这一点,但我认为友好ID的问题是事物受模型限制。 如果我确实希望在整个站点范围内进行拍击,则可以创建一个对所有模型都具有多态关系的拍击表。 Sluggable_type和sluggable_id,然后是具有完整永久链接/ slug的slug字段。 +---------------------------------------------
  • 如何为 ios 应用程序构建和使用 C++ 静态库(How to build and use a C++ static library for ios application)
    问题 我知道如何在 xcode 4.6 中使用iOS->Framework&Library->Cocoa Touch Static Library构建对象 C 静态库,并且在本教程的帮助下很简单。在 iOS 教程中创建静态库。 然而,我不确定的一件事是如何为 io 应用程序构建和使用纯 C++ 静态库。 对于C++静态库的构建,我也是使用iOS->Framework&Library->Cocoa Touch Static Library指导方针,不同的是我在创建静态库项目的时候删除了所有的.h和.m文件,然后把所有的C++项目中的静态库头文件和实现文件。 一个非常简单的例子如下: 你好.h #include <iostream> void say_hello(); 你好.cpp #include "hello.h" void say_hello() { std::cout<<"hello"<<std::endl; } 它似乎有效,我可以为 iPhone 6.1 Simulator 构建hello.a静态库。 下一步是构建一个将调用静态库的应用程序。 我为 iPhone 6.1 Simulator 构建了一个简单的iOS application->Single View Application ,然后尝试调用ViewController.mm文件中的hello.a静态库(将
  • 如何将应用内购买添加到iOS应用?(How do you add an in-app purchase to an iOS application?)
    问题 如何将应用内购买添加到iOS应用? 所有细节都是什么,是否有示例代码? 这意味着可以将各种应用内购买添加到iOS应用中 回答1 迅捷的用户 Swift用户可以查看有关此问题的My Swift Answer。 或者,查看Yedidya Reiss的答案,该答案将这个Objective-C代码转换为Swift。 Objective-C用户 该答案的其余部分用Objective-C编写 App Store连接 转到appstoreconnect.apple.com并登录单击My Apps然后单击要添加购买的应用程序点击Features标题,然后选择左侧In-App Purchases 点击中间的+图标在本教程中,我们将添加应用内购买来删除广告,因此请选择“ non-consumable 。 如果您要向用户发送实物商品,或给他们一些可以让他们多次购买的东西,则可以选择consumable 。 对于参考名称,请输入您想要的名称(但请确保您知道它是什么) 产品ID把tld.websitename.appname.referencename这将工作最好的,因此,例如,你可以使用com.jojodmo.blix.removeads 选择cleared for sale ,然后将价格等级选择为1(99¢)。 第2层的价格为1.99美元,第3层的价格为2.99美元。 如果您单击view
  • char是默认提升的吗?(Is char default-promoted?)
    问题 这可能是一个愚蠢的问题,但有人可以为C ++ 11和C11提供标准参考: char默认提升为int吗? 这里有一点背景:C和C ++都有默认参数提升的概念(C ++ 11:5.2.2 / 7; C11:6.5.2.2/6)。 这需要在以下调用中提升参数: void f(int, ...); float a = 1; short int b = 2; char c = 'x'; f(0, a, b, c); 对于函数调用, a转换为double , b转换为int 。 但是c会发生什么? 我一直都觉得char也会被提升为int ,但是我在标准中找不到相关的陈述。 回答1 C ++ 在C ++ 2011(ISO / IEC 14882:2011)中,相关部分似乎是: §5.2.2函数调用[expr.call] ¶6可以声明一个函数接受的参数数量少于(通过声明默认参数(8.3.6)的参数)或通过使用省略号,...或函数参数包(8.3.5)的参数(可以使用多个参数)。函数定义(8.4)中的参数。 [注:这意味着,除了使用省略号(...)或函数参数包的情况以外,每个参数都可以使用一个参数。 —尾注] ¶7如果给定参数没有参数,则以使接收函数可以通过调用va_arg(18.10)来获取参数值的方式传递参数。 [注意:本段不适用于传递给函数参数包的参数。 函数参数包在模板实例化(14.5