2014年7月18日金曜日

2014/07/18 今日のジェニ







お久しぶりです。

バーニーズ・マウンテンのジェニには辛い季節になりました。






そんなことないよ!






最近のジェニは以前よりショートカットです。






暑いけど氷のペットボトルで頑張るジェニなのでした。








ジェニもカードで登場する「神経衰弱 - Melancholy」は App StoreGoogle Play で好評公開中です。






ぜひお試し下さい。

 神経衰弱 - Melancholy 特設ページ





2014年7月16日水曜日

【iOS技術連載】 In-App Purchase 第5回 - プロダクト登録のタイミング

In-App Purchaseに関する連載5回目です。

今回は最終回として、アプリケーション申請フローにおけるプロダクト登録のタイミングについて簡単にまとめます。






プロダクト登録は、iTunes Connectでアプリケーションのレコードを作成して以降、任意のタイミングで可能です。

アプリケーションにプロダクトを含めるには、申請しようとしているアプリケーションのバージョンに、プロダクト情報を紐づける必要があります。

紐付けは、バイナリーのアップロードを開始する前(通常のシーケンスなら「Prepare for Upload」状態)に行う必要があります。

バイナリーを受け付ける状態(Waiting For Upload)にしてしまうと紐付けできなくなるので、注意が必要です。



今回までの5回の連載で、In-App Purchaseに関して実装上必要となるトピックスをご紹介しました。

連載に含まれていない大きめのトピックとして、プロダクトを自前のサーバーから提供する場合の決済処理などがあります。

その他、具体的なコード例を含む詳細については連載1回目の参考文献に詳しいので、ぜひご覧下さい。


画面や処理の流れなどは、下記アプリケーションを実際にご覧いただくのが分かりやすいと思います(2014.07.16現在)。





5回に渡りおつきあいいただき、ありがとうございます。
次回からはiCloudに関する連載を予定しています。







2014年7月9日水曜日

iPhone・iPad両対応アプリ「Countil」がiPhone女子力で紹介されました

ご好評いただいている「Countil - あと何日で・・・」が、サイト「iPhone女子力」で紹介されました。

この記事を書いている時点では、サイトのトップに大きく掲載されています。





まだ「Countil」を入手されていない方、この機会にぜひお試し下さい。








2014年7月8日火曜日

壁紙5点とお得なセットを追加した「Countil」新バージョン公開中です

iPhone・iPad両対応アプリ「Countil - あと何日で・・・」をご愛顧いただき、大変ありがとうございます。

ご連絡が遅くなりましたが、壁紙5点とそのセット販売を追加したバージョン「1.2.0」が先週末に App Store で公開 され、多くのダウンロードをいただいています。






今回は日常のシーンをイメージした壁紙が追加になっています。

また初の試みとして、今回追加分の壁紙5点のセット販売を行います。
壁紙をバラでお買い求めいただくよりお得になっています。

壁紙セットは、一覧右下の「ショップ」ボタンからご購入いただけます。


さらに新バージョンの公開を記念して、期間限定で壁紙5点セットの30%オフセールを実施中です。
この機会をお見逃しないように、ぜひお早めにお求め下さい。


 「Countil - あと何日で・・・」 - iTunes

 「Countil - あと何日で・・・」サポートページ



なお「Countil」の最新情報は、Facebook、Twitter、Google+の公式アカウントで常時配信しています。


 Facebook 公式アカウント

 Twitter 公式アカウント

 Google+ 公式アカウント






2014年7月3日木曜日

【iOS技術連載】In-App Purchase 第4回 - プロダクトの復元処理

【In-App Purchase 第4回】

In-App Purchaseに関する連載4回目です。
今回は、購入済みのプロダクトの復元処理についてご紹介します。


プロダクトの復元が必要な場面として、以下のケースが考えられます。

  • アプリケーションを(削除して)再インストールした。
  • 端末を買い替えた・買い足した。

上記のような場合でも、プロダクト購入の事実はApp Store側に記録されているので、復元の要求を行うことで、現在の端末でも購入済みプロダクトを引き続き使用可能にすることができます。






第3回までの内容が実現されていれば、プロダクトの復元の実装は非常に簡単です。


  [[SKPaymentQueue defaultQueue] restoreCompletedTransactions];


上記の1文で、復元用の支払いトランザクションが開始され、SKPaymentTransactionObserverプロトコルに状態変化や完了が通知されます。

第3回のコード例を再掲します:


 - (void)paymentQueue:(SKPaymentQueue *)queue
  updatedTransactions:(NSArray *)transactions {

      // 通知された支払いトランザクションそれぞれについて:
      for (SKPaymentTransaction *transaction in transactions) {
          switch (transaction.transactionState) {
              case SKPaymentTransactionStatePurchased: {
                  // プロダクト購入が完了した。
                  // プロダクトを使えるようにする(★)。

                  [queue finishTransaction:transaction];

                  break;
              }
              case SKPaymentTransactionStateRestored: {
                  // 購入済みプロダクトの復元が完了した。
                  // 多くの場合、購入完了時と共用可能(★)。

                  [queue finishTransaction:transaction];

                  break;
              }
              case SKPaymentTransactionStateFailed: {
                  // 支払い処理が失敗した。
                  // エラー表示などを行う。

                  [queue finishTransaction:transaction];

                  break;
              }
          }
      }
  }


プロダクトが復元されると、上記コード中のSKPaymentTransactionStateRestoredのcase文が実行されます。

また復元の完了は、下記のメソッドでハンドリングします:


 - (void)paymentQueueRestoreCompletedTransactionsFinished:
         (SKPaymentQueue *)queue {

     // 復元トランザクションが完了した。
     // 利用者に対するメッセージ表示、画面の再描画などを行う。
 }



アイウィーヴの製品では、アプリケーション内販売を行っている下記アプリケーションのすべてで、復元処理
(リストア)を用意しています:




今回は、購入済みのプロダクトの復元処理についてご紹介しました。
次回は最終回として、アプリケーション申請とプロダクトの登録のタイミングについてご紹介する予定です。