重點 (二十二) : 內(nèi)購/廣告

內(nèi)購——應(yīng)用內(nèi)購買

通過蘋果應(yīng)用程序商店有三種主要賺錢的方式:

直接收費(與國內(nèi)大部分用戶的消費習(xí)慣相悖)

廣告

O2O -> Online推廣 & Offline交易已脓,閉環(huán)

不要砍功能屹电,增加內(nèi)容疑俭,而不是增加功能

內(nèi)購:應(yīng)用程序本身的增值產(chǎn)品唁毒,游戲裝備趾撵,應(yīng)用程序中增值功能同樣可以內(nèi)購

第三方支付:跟應(yīng)用程序無關(guān)的

內(nèi)購:三(蘋果)七(開發(fā)商)開

提示:

要做好游戲 & 應(yīng)用椅寺,一定要研究心理梯影,要研究哲學(xué)

人人都是產(chǎn)品經(jīng)理

內(nèi)購的五種產(chǎn)品類別

非消耗品(Nonconsumable)一旦購買,終身擁有

指的是在游戲中一次性購買并擁有永久訪問權(quán)的物品或服務(wù)诅挑。非消耗品物品可以被用戶再次下載四敞,并且能夠在用戶的所有設(shè)備上共享

消耗品(Consumable),買了就用拔妥,用了就沒

消耗品購買不可被再次下載忿危,根據(jù)其特點,消耗品不能在用戶的設(shè)備之間跨設(shè)備使用没龙,除非自定義服務(wù)在用戶的賬號之間共享這些信息

以下三種類別在iBooks中使用铺厨,目前iBooks不支持大陸市場

ISBN:每本書的一個ID

免費訂閱(Free subscriptions)

自動續(xù)費訂閱(Auto-renewing subscriptions)

非自動續(xù)費訂閱(Nonrenewing subscriptions)

1.png

2.png

3.png

4.png

5.png

6.png

7.png

8.png

添加StoreKit框架

要使用內(nèi)購,需要導(dǎo)入StoreKit框架

內(nèi)購的常用方法

請求有效的產(chǎn)品代號集合

購買指定產(chǎn)品

驗證購買(在購買完成之后硬纤,驗證)

恢復(fù)購買(針對非消耗品)

請求有效產(chǎn)品集合

實例化產(chǎn)品請求

SKProductsRequest*request = [[SKProductsRequest
alloc]initWithProductIdentifiers:identifiers];

設(shè)置代理

[request setDelegate:self];

啟動請求

[request start];

提示:

  1. 實例化請求時解滓,必須指定有效的identifiers集合,之所以如此處理筝家,主要是為了確保提交的內(nèi)購商品真的通過了蘋果的審批洼裤,處于可用狀態(tài)!

  2. 要想獲取到準確的可用產(chǎn)品集合溪王,需要通過代理方法實現(xiàn)

  • (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
  1. 越獄用戶無法測試內(nèi)購腮鞍,但是可以購買

購買產(chǎn)品

  1. 內(nèi)購的交易過程是通過SKPaymentTransactionObserver監(jiān)控的,因此需要為IAPHelper添加交易觀察者:

添加交易觀察者對象

[[SKPaymentQueue
defaultQueue]addTransactionObserver:sharedInstance];

  1. 由于發(fā)起交易需要使用SKProduct對象莹菱,因此需要使用字典記錄所有可用的商品

NSMutableDictionary
*_productsDict;

交易隊列回調(diào)方法

  • (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

{

for (SKPaymentTransaction *transactionin transactions) {

        購買完成

if
(transaction.transactionState== SKPaymentTransactionStatePurchased) {

        NSLog(@"購買完成%@", transaction.payment.productIdentifier);



        [queuefinishTransaction:transaction];

    } else

if (transaction.transactionState ==SKPaymentTransactionStateFailed) {

       if (transaction.error.code != SKErrorPaymentCancelled)

{

NSLog(@"交易失斠乒:%@", transaction.error.localizedDescription);

        }

    }

}

}

恢復(fù)購買

[[SKPaymentQueue

defaultQueue]restoreCompletedTransactions];

購買數(shù)據(jù)記錄問題——系統(tǒng)偏好

[[NSUserDefaults standardUserDefaults]setBool:isPurchased
forKey:productId];

[[NSUserDefaults
standardUserDefaults]synchronize];

廣告簡介

在蘋果的廣告市場上有兩套系統(tǒng)

-展現(xiàn),程序只要嵌入廣告即可

-發(fā)布

廣告的展現(xiàn)

-廣告的展現(xiàn)內(nèi)容道伟,是由蘋果根據(jù)應(yīng)用程序的關(guān)鍵字桥狡,分類,上架地區(qū)等綜合評定后自動推送的

-應(yīng)用程序無需關(guān)心

廣告

廣告收益三七開

添加 iAd.framework 框架

添加 ADBannerView 視圖,并設(shè)置代理方法

廣告條加載完成之前最好隱藏

  • (void)bannerViewDidLoadAd:(ADBannerView *)banner {

    self.bannerBottomConstraint.constant = 20.0;

    [UIView animateWithDuration:0.5 animations:^{

      [self.view layoutIfNeeded];
    

    }];

    NSLog(@"加載廣告成功");

}

  • (void)bannerView:(ADBannerView *)banner
    didFailToReceiveAdWithError:(NSError *)error
    {

    NSLog(@"加載廣告失敗 %@", error);

}

**********************筆記********************


內(nèi)購和廣告:

  1. 什么是內(nèi)購?

內(nèi)購就是指,在APP內(nèi)購買某些產(chǎn)品

如果你在App中銷售的商品,跟App有關(guān)(例如植物大戰(zhàn)僵尸中的道具,需要開啟關(guān)卡,擁有某種技能等等).那么,蘋果規(guī)定,必須通過內(nèi)購方式購買.

內(nèi)購分成:
3 : 7

  1. 為什么做內(nèi)購?

  2. 開發(fā)者創(chuàng)收的一種模式: free + 內(nèi)購

  3. 某些業(yè)務(wù)必須使用內(nèi)購

  1. 內(nèi)購的產(chǎn)品類型?

1.非消耗品(Nonconsumable)

買了就一直有,不會消耗,例如開啟關(guān)卡

一般指的是在游戲中一次性購買并擁有永久訪問權(quán)的物品或服務(wù)裹芝。非消耗品物品可以被用戶再次下載,并且能夠在用戶的所有設(shè)備上使用

2.消耗品(Consumable)

買了就用娜汁,用了就沒

專為支持可消耗的物品或服務(wù)設(shè)計的嫂易,消耗品購買不可被再次下載,根據(jù)其特點掐禁,消耗品不能在用戶的設(shè)備之間跨設(shè)備使用怜械,除非自定義服務(wù)在用戶的賬號之間共享這些信息

3.其他類型

以下三種類別在iBooks中使用,目前iBooks不支持大陸市場

免費訂閱(Free
subscriptions)

自動續(xù)費訂閱(Auto-renewing
subscriptions)

非自動續(xù)費訂閱(Nonrenewing
subscriptions)

4.內(nèi)購演練

  1. 在App管理中心,創(chuàng)建一個App,并填寫App信息

注意: 此處創(chuàng)建的App時,填寫套裝ID,時,必須選擇可以內(nèi)購的套裝ID

  1. 創(chuàng)建內(nèi)購商品,并添加到App,指定此App,可以銷售哪些商品

注意: 創(chuàng)建內(nèi)購商品的前提,是你已經(jīng)填寫了稅務(wù)/銀行信息,否則的話,無法創(chuàng)建

  1. 添加用于測試內(nèi)購的測試賬號
  1. 創(chuàng)建App項目,開始開發(fā)
  1. 代碼實現(xiàn)內(nèi)購流程

(1) 從APP服務(wù)器請求數(shù)據(jù)列表, 并行蘋果服務(wù)器請求可以銷售的商品列表

[XMGDataTool
getGoodsWithResult:^(NSArray *goods) {

NSArray *ids = [goods valueForKeyPath:@"goodID"];

請求哪些商品可以賣

NSSet *idSet = [NSSet setWithArray:ids];

SKProductsRequest *request = [[SKProductsRequest alloc]
initWithProductIdentifiers:idSet];

request.delegate = self;

[request start];

}];

(2) 在代理方法中獲取并顯示可銷售列表

  • (void)productsRequest:(SKProductsRequest *)request
    didReceiveResponse:(SKProductsResponse *)response

{

self.products = response.products;

}

(3) 用戶購買商品, 并監(jiān)聽商品交易狀態(tài)

取出商品

SKProduct
*product = self.products[indexPath.row];

購買商品

SKPayment
*payMent = [SKPayment paymentWithProduct:product];

把憑證加入到隊列,
等待用戶付款

[[SKPaymentQueue
defaultQueue] addPayment:payMent];

設(shè)置監(jiān)聽者,
監(jiān)聽整個交易狀態(tài)

[[SKPaymentQueue
defaultQueue] addTransactionObserver:self];

(4) 實現(xiàn)監(jiān)聽交易狀態(tài)方法

交易狀態(tài)發(fā)生變化時調(diào)用

  • (void)paymentQueue:(SKPaymentQueue *)queue
    updatedTransactions:(NSArray<SKPaymentTransaction *> *)transactions

{

[transactions enumerateObjectsUsingBlock:^(SKPaymentTransaction *_Nonnull obj, NSUInteger idx,BOOL * _Nonnull
stop)

{

     SKPayment *payment , 小票, 包含商品

     SKPaymentTransactionState

transactionState 交易狀態(tài)

  switch

(obj.transactionState) {

      case 

SKPaymentTransactionStatePurchasing:

NSLog(@"正在付款");


          break;


           


      case 

SKPaymentTransactionStatePurchased:

      {

        
NSLog(@"付款結(jié)束");


          [queue finishTransaction:obj];


          break;


      }


      case 

SKPaymentTransactionStateFailed:

      {

        
NSLog(@"交易失敗");


          [queue finishTransaction:obj];


          break;


      }


      case 

SKPaymentTransactionStateRestored:

NSLog(@"恢復(fù)購買");


          break;


      case

SKPaymentTransactionStateDeferred:

NSLog(@"推遲付款");


          break;


           


      default:


          break;


  }

}];

}

具體步驟, 請參照步驟截圖詳解

  1. 廣告

1.廣告的作用?

屬于創(chuàng)收的一種方式, 你在App內(nèi)展示廣告,蘋果會付費給你,分成從原來的4:6 到3:7

2.如何展示廣告

  • 導(dǎo)入框架: iAd.framework

  • 添加控件: ADBannerView

  • 實現(xiàn)代理ADBannerViewDelegate,優(yōu)化用戶體驗

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末傅事,一起剝皮案震驚了整個濱河市缕允,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蹭越,老刑警劉巖障本,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異响鹃,居然都是意外死亡驾霜,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門买置,熙熙樓的掌柜王于貴愁眉苦臉地迎上來粪糙,“玉大人,你說我怎么就攤上這事忿项∪馗裕” “怎么了?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵轩触,是天一觀的道長寞酿。 經(jīng)常有香客問我,道長怕膛,這世上最難降的妖魔是什么熟嫩? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮褐捻,結(jié)果婚禮上掸茅,老公的妹妹穿的比我還像新娘。我一直安慰自己柠逞,他們只是感情好昧狮,可當(dāng)我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著板壮,像睡著了一般逗鸣。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天撒璧,我揣著相機與錄音透葛,去河邊找鬼。 笑死卿樱,一個胖子當(dāng)著我的面吹牛僚害,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播繁调,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼萨蚕,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蹄胰?” 一聲冷哼從身側(cè)響起岳遥,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎裕寨,沒想到半個月后浩蓉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡帮坚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年妻往,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片试和。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡讯泣,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出阅悍,到底是詐尸還是另有隱情好渠,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布节视,位于F島的核電站拳锚,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏寻行。R本人自食惡果不足惜霍掺,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望拌蜘。 院中可真熱鬧杆烁,春花似錦、人聲如沸简卧。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽举娩。三九已至析校,卻和暖如春构罗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背智玻。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工遂唧, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人尚困。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓蠢箩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親事甜。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容