基本上,我试图在应用程序购买testing应用程序之前,我把它们实施到我的公司正在合适的应用程序。 我已经阅读了大约1000次的商店套件pdf和其他片段,但是产品仍然是空的。 这正是我到目前为止所做的: 安装testing应用程序和In App Purchasetesting项目 我在iPhone开发中心的公司开发人员门户网站上为“Test App One”创build了一个新的应用程序ID。 我确定前缀是com.mycompany.testappone以确保可以configuration应用程序购买。 留在应用程序ID部分,我通过勾选“启用应用程序内购买”选项configuration应用程序购买。 我在iTunes Connect中创build了“Test App One”,并完成了通常的程序,但是select了“稍后上传二进制文件”,并没有提交审核,因为该应用程序什么都不做。 当然,我们不必提交应用程序来检查这个工作?! 然后,我点击了应用程序购买pipe理,并创build了一个新的产品ID“test1”,并批准它,以便清除销售。 码 我在XCode中build立了一个名为TestAppOne的新项目,这里是我现在使用的唯一两个类: TestAppOneAppDelegate.h: #import <UIKit/UIKit.h> #import <StoreKit/StoreKit.h> @interface TestAppOneAppDelegate : NSObject <UIApplicationDelegate, SKRequestDelegate, SKProductsRequestDelegate> { UIWindow *window; } TestAppOneDelegate.m: #import "TestAppOneAppDelegate.h" static NSString *kMyFeatureIdentifier1 = @"com.mycompany.testappone.test1"; @implementation TestAppOneAppDelegate @synthesize window; – (void)applicationDidFinishLaunching:(UIApplication *)application { if([SKPaymentQueue canMakePayments]) { NSLog(@"IN-APP:can […]
我到目前为止:重装后,用户需要点击“购买function”,然后他得到0.99美元的问题感到害怕,然后必须login,然后被告知function已经买了,他得到了免费的。 我知道苹果是一个宗教,用户是坚强的信徒,但是没有更好的办法吗? :-)我想要的是检查function,而不真正购买它。 让用户input他的帐户信息似乎是必要的,也许购买$ 0.00function? 或者是否有某种方法可以做到这一点? 我正在使用MKStoreKit进行整个应用程序内购买,但任何解决scheme都会很棒。 UPDATE thanx到darvids0n,你的方法解决了我的问题! 这里有一些工作代码为其他人尝试相同的: – (void)removePreviousPurchases { //just for sandbox testing [[MKStoreManager sharedManager] removeAllKeychainData]; } – (void)restorePreviousPurchases { //needs account info to be entered if([SKPaymentQueue canMakePayments]) { [[MKStoreManager sharedManager] restorePreviousTransactionsOnComplete:^(void) { NSLog(@"Restored."); /* update views, etc. */ } onError:^(NSError *error) { NSLog(@"Restore failed: %@", [error localizedDescription]); /* update views, […]
对于具有非消费性应用程序内购买的基本应用程序,是否有人想出了使用SKPaymentQueue的restoreCompletedTransactions最佳实践? 意见 我知道build议您始终注册一个交易观察员,以接收未完成交易,然后回到应用程序,但这是一个不同的问题。 看起来像restoreCompletedTransactions是应用程序必须积极决定何时调用轮询所有客户已经做的采购。 据我所知,该方法旨在检索可能已经丢失的购买。 例如,一个客户可能会安装或移动应用程序到一个新的设备应用程序的本地logging以前的付款丢失或重置。 关注 我不清楚的是如何以可靠的方式自动检测到这种情况(即如何决定何时缺货购买)。 我不想把这个搞砸,否则就有可能拒绝客户访问他们已经支付的function。 同时,我不希望每次调用restoreCompletedTransactions时,应用程序启动都是安全的,基本上可以返回99.9%的时间我已经知道的事务。 (除了应用程序内购买,我的应用程序并不需要任何networking连接。) 笔记 苹果公司的文件澄清说,客户不会再收取任何他们已经作出的非消耗性采购。 如果他们试图重新购买,付款交易仍然应该发送到应用程序。 最糟糕的情况是,客户可以通过这种方式来恢复购买,但是我仍然希望避免将它们放在类似于重新购买已经支付的东西的path上。
我一直玩的应用程序购买了几天,一切正常,直到我试图validation与应用程序商店的收据,因为我经常回到无效状态。 我将收据数据传递给我的PHP服务器,然后从那里转发到app store,一旦我得到一个有效的响应,我打算将收据数据添加到我的数据库。 商店套件编程指南和类参考对于这个特定的领域来说没有什么用处,因为它们并没有给你任何例子,我find了一篇有用的文章 ,帮助我了解了一些东西,但还是有些错误。 基本上我想知道是否有收到validation工作的人愿意分享他们的代码,因为我无处可去。 谢谢
我的应用程序内购买工作。 我用一个“购买”UIButton呈现一个ModalView。 您单击button,In App Purchase将执行此过程。 你甚至可以连续做几次。 如果打开模态视图,然后closures模态视图(使用UITabBarButtonItem),然后重新打开模态视图并点击“购买”button,就会出现问题。 该应用程序崩溃,我得到一个NSZombie读取 *** – [InAppPurchaseManager respondsToSelector:]:发送到释放实例0x1c7ad0的消息 NSZombie指向.m文件中的第160行。 我已经用评论标记了它。 我从这个页面获得了原始代码: http : //troybrant.net/blog/2010/01/in-app-purchases-a-full-walkthrough/ 我已经为此奋斗了很多天了…任何帮助将是真棒。 这是.h // // InAppPurchaseManager.h // Copyright 2010 __MyCompanyName__. All rights reserved. #import <UIKit/UIKit.h> #import <StoreKit/StoreKit.h> #define kInAppPurchaseManagerProductsFetchedNotification @"kInAppPurchaseManagerProductsFetchedNotification" #define kInAppPurchaseManagerTransactionFailedNotification @"kInAppPurchaseManagerTransactionFailedNotification" #define kInAppPurchaseManagerTransactionSucceededNotification @"kInAppPurchaseManagerTransactionSucceededNotification" #define kInAppPurchaseCreditProductId @"com.myname.app.iap" @interface InAppPurchaseManager : UIViewController <SKProductsRequestDelegate, SKPaymentTransactionObserver> { SKProduct *productID; […]
在向苹果发布应用程序内购买时,他们要求在截图之前将其包含在内。 他们想要什么样的截图? 我的应用程序内购买解锁一些精简版的版本,我不知道苹果想在这里看到什么。
有没有人有任何想法如何重置和/或清除IOS应用内购买沙箱? 我有一个应用程序,我正在使用沙盒testing,我想testing新的购买,而不必每次购买东西时创build一个新的testing用户。 如果我不这样做,那么当我点击我的应用程序的购买button时,我(当然)总是会收到应用程序内购买项目已经购买的消息。
我知道这已经被问了很多次了,但是没有一个问题对我有帮助,我不确定哪些答案在iOS 7中仍然有效。 我正在做一些与自动更新订阅的应用程序。 我已经成功创build了我的产品,可以和testing用户一起购买。 我的问题是:什么是正确的方法来检查一个特定的用户是否仍然可以访问此产品? 以及如何testing自动更新是否运行良好? (因为我读了沙盒自动更新不作为真正的iStore工作)。 最后一个问题是:苹果是否拒绝了很多ARS应用程序呢? 马尔科