タグ

InAppPurchaseに関するy-kobayashiのブックマーク (19)

  • [iOS] Sandboxテスターによる課金デバッグはProduction環境で行なってはいけない | DevelopersIO

    はじめに こんぬづは、『あの娘にキスと白百合を』で有名な缶乃先生の別作品である『サイダーと泣き虫。』という短編集が 最高 of 最高 なのでぜひ読んで欲しいと思っている田中です。 さて、今回は課金のデバッグでハマったポイントについて紹介します。 Sandboxテスターによる課金デバッグをProduction環境で行なってはいけない理由 注釈として、今記事の 「Production環境」 という言葉が指すのは、 リリース済みのアプリ環境 のことです。 理由は、公式ドキュメントからの引用ですが、Production環境においてSandboxテスターを使用してしまうと、そのSandboxテスターは無効なテスターとなってしまい、以降そのSandboxテスターを使っての課金のデバッグは行えなくなってしまうからです。そしてもし利用した場合、その課金デバッグは正常に行われません。(デバッグ時の具体的な挙

    [iOS] Sandboxテスターによる課金デバッグはProduction環境で行なってはいけない | DevelopersIO
  • In-App Purchase での購入履歴を確認する方法 - Qiita

    購入履歴をNSUserDefaultsに記録 (非推奨) Appleのドキュメントにはこの方法が書かれているが、セキュリティの観点から非推奨。 pros 手軽に実装できる cons NSUserDefaultsファイルは簡単に閲覧/編集できる 参考 (pdf) In-App Purchase プログラミングガイド NSUserDefaultsにデータを保持するコード例あり NSUserDefaults are not the place for sensitive data! 購入履歴を暗号化 or 難読化してNSUserDefaultsに記録 (非推奨) pros ライブラリを使うと手軽に実装できる cons NSUserDefaultsファイルは簡単に閲覧/編集できるので、暗号化 or 難読化方法が知られると購入履歴を操作されてしまう 参考 matthiasplappert/Secur

    In-App Purchase での購入履歴を確認する方法 - Qiita
  • iOSで消費型プロダクトのアプリ内課金を実装する際の注意点 - Blog :: Meatware

    TODO:コード例を載せる Consumable なプロダクトの In-App Purchase は、クライアント側でのアプリ内課金と、サーバ側でのアイテムの付与が1対1になっている必要があります。 課金をしていないのにアイテムの付与をする、あるいは課金をしたのにアイテムを付与していない、という状況は許されません。 今回は、正しくアイテムを付与するためにはどうすればいいのかについて書きます。 正しい付与のやり方 iOS の消費型 IAP ってめんどそうだなぁとか思ってたけど、よく考えると、クライアントは正常に成功か失敗が返ってくるまでリトライする、サーバは1個のトランザクションで1回だけアイテムを増加させる、というルールさえ守ってれば何とかなりそうな気がする。 — めるぽん(ヘルニアン) (@melponn) 2013, 12月 5 当に重要な部分は、これだけです。 iOS でアプリ内課

  • iOS/Androidアプリ内課金の不正なレシートによる有料会員登録を防ぐ - pixiv inside [archive]

    こちらはピクシブ株式会社 Advent Calendar 2014の12/9の記事です。 こんにちは。iOSエンジニアの@shobyshobyです。 歌も歌えてコードも書けるエンジニアを目指して、毎週ボイトレに通っています。 さて、私は最近、pixiv公式iOS/Androidアプリ向けのSubscription課金の実装を担当していたのですが、 いざ機能を公開してみると、APIに投げられる不正なレシートが予想以上に多いことに気がつきました。 今回は、iOS/Androidアプリ内課金の不正なレシートによる有料会員登録を防ぐ対策を解説します。 有料会員登録の検証処理に漏れがある場合、お金を払わずに不正に有料会員になることができてしまうため、 アプリ内課金のバックエンド処理は慎重に設計、実装する必要があります。 ※この記事では、AndroidのIn-app Billing Version 3

    iOS/Androidアプリ内課金の不正なレシートによる有料会員登録を防ぐ - pixiv inside [archive]
  • iOSアプリ初心者がswiftでアプリ内課金の実装をやってみた - Qiita

    初心者御用達のやってみたシリーズです。 お仕事で新卒ながらobjective-cからswiftへの移行を任されました。 ちなみにobjective-cもswiftも全くの未経験です。社内にも詳しい人がいません…ナンテコッタ 最初obcを見た時は、何でこんなにたくさん配列があるの?って思いました 今回は同じようなswift初心者(swiftからiOSアプリ開発に入った人)でアプリ内課金を実装する人の助けになりそうなことをいろいろまとめていきたいと思います。 主に、実装・コーディングに関することが中心です。 Appleのドキュメント Apple公式の 若干不親切で意味が分かりそうで分からない 日語ドキュメントはこちらにあります。 「In App Purchase プログラミングガイド」とか「レシート検証プログラミングガイド」が、 アプリ内課金で必要なドキュメントかと思います。(PDFに直リン

    iOSアプリ初心者がswiftでアプリ内課金の実装をやってみた - Qiita
  • iOS 課金まとめ - Qiita

    参考 2019/1/1現在の日語ドキュメントをもとに再編成しています。 最新版は英文を確認ください。 In-App Purchaseプログラミングガイド 公式ドキュメント 失敗しない iOS In-App Purchase プログラミング iOS の アプリ内課金(In-App Purchase) 組込方法 Apple Pay In-App Purchaseについて StoreKitフレームワークを使用してアプリケーション内にストアを組み込む方法 販売できないもの 実物の商品やサービスを販売することはできない。 仮想通貨 ポルノ、誹謗、中傷、ギャンブルに関連するもの ギャンブルのシミュレー ションであれば問題なし。 販売できるもの 電子商品や電子サービス デジタルコンテンツ(電子書籍、雑誌、写真など) 機能プロダクト 機能のロック解除や拡張。 App内課金の種類 Consumable(消

    iOS 課金まとめ - Qiita
  • iOSの消耗型課金のサーバーサイドTipsまとめ - Qiita

    注意 この情報は2017年8月25日現在のものです。 目次 消耗型課金全体の処理フロー レシート検証について 課金アイテムの扱い方について 消耗型課金全体の処理フロー 消耗型課金とは、AppStoreで登録できる使い切りのアイテムへの課金のことをいいます。 たとえば、ゲームアプリでライフを購入するときなどは使い切りのアイテムなので消耗型課金になります。一方、1か月など決まった期間サービスが受けられる課金のことを月額課金や、自動更新購読といいます。 (実際のアイテム登録画面) アプリで消耗型課金商品を購入してからの処理の順番は、下記の図のようになります。 アプリからAppStoreへ購入リクエスト AppStoreからレシートを受取る サーバーサイドへBase64エンコード済みのレシートを投げる サーバーサイドはBase64エンコード済みのレシートを使ってAppStoreにレシート問い合わせ

    iOSの消耗型課金のサーバーサイドTipsまとめ - Qiita
  • iOS In-App Purchase実装で必ず知っておきたい隠れた罠 - Qiita

    はじめに Qiita初投稿です。 今回は入社一年目の会社でiOSのIn-App Purchaseの継続課金の実装、テストを任されました。その際に調べながら進めていったのですが、なかなかまとまっているものもなく、中にはとても探しずらかったり、たまたま方法を発見したり、調べても解決せずに問い合わせたものもあったので、この機会に詰まった部分や気をつけたことをまとめました。もっといい方法などもあると思うのでその際は気軽にコメントして頂けると助かります。 書くこと firebaseとstorekitの競合によって起こった課金障害(storekitはiOSが提供しているIn-App Purchaseを行うためのフレームワークです)やstorekitで困ったこと、テストで用いるAppleのsandbox環境に悩まされたことについて書きました。 同じようにIn-App Purchaseで苦しんでいる人がこ

    iOS In-App Purchase実装で必ず知っておきたい隠れた罠 - Qiita
  • In-App Purchase(自動更新購読 Auto-Renewing subscription)を実装する際に調べたことまとめ - Qiita

    In-App Purchase(自動更新購読 Auto-Renewing subscription)を実装する際に調べたことまとめiOSアプリ内課金InAppPurchaseSwift 概要 記事を読むことで、iOSアプリでアプリ内課金をするために必要なことがわかるようになります。 要所を押さえて解説するので、詳しくは参考資料等をご覧ください。 なお、今回のメインターゲットは自動更新型(Auto-renewable Subscriptions)なので、その他の種類では一部異なる場合があります。 テスト環境の構築 In-App Purchaseは番環境の他にテスト環境(SandBox)が用意されています。 開発中はSandBoxを使うことになりますが、利用するために必要なことがいくつかあります。 iTunes Connect 契約/税金/口座情報の設定(未設定の場合) 「契約/税金/口座

    In-App Purchase(自動更新購読 Auto-Renewing subscription)を実装する際に調べたことまとめ - Qiita
  • iOS In-App Purchase プログラミングでハマった話 - Qiita

    こんにちは。Supership株式会社の @koogawa です。最近は「Poptalk-タレントとファンのチャットコミュニティ」というiOSアプリを開発しました。 Supership Advent Calendar 6日目となる今夜は、Poptalkの開発において非常に苦労した点を共有したいと思います。主に In-App Purchase(アプリ内課金)の話になります。 何が起こったのか 一言で言うと「お金を払ったのにアイテムが追加されない」ケースが発見されました。 ※幸い、リリース前のテスト運用時に発見・修正できたので現在は安心してお使い頂けます 発生条件 使用しているデバイスで 初めて 課金処理をする Apple IDにクレジットカードを登録している を両方満たす場合に発生することがわかりました。 通常のフロー まずは通常の購入フローを見てみましょう。 1. App内課金の確認アラ

    iOS In-App Purchase プログラミングでハマった話 - Qiita
  • Swift3による自動更新購読のアプリ内課金(In-App Purchase)の実装 for 月額課金 - Qiita

    iOS開発におけるアプリ内課金には以下の4種類があります。 消耗型 非消耗型 自動更新登録 非更新登録 ここでは、Swift3による月額課金の自動更新処理を行います。 iTunes Connectでプロダクトの登録 iTunes Connect(https://itunesconnect.apple.com ) へアクセスし、[マイApp]から[新規App]を作成し、[自動更新登録]のApp内課金を追加しておく。 参照名: <iTunes Connect上で表示されるプロダクト名> 製品ID: xxx.xxx.xxx.xxx(以下、製造IDはこの表記を使用する) この時、登録期間として以下の6種類が選択できるので1か月を選択しておく。 1週間 1か月 2か月 3か月 6か月 1年 無料トライアルとして、以下の3種類が選択できる。 なし 1週間 1か月 なお、App内課金のページにおける[共

    Swift3による自動更新購読のアプリ内課金(In-App Purchase)の実装 for 月額課金 - Qiita
  • FURYU Tech Blog-フリューテックブログ | Furyu Tech Blog

    はじめに こんにちは、ピクトリンク事業部開発部サーバサイド開発課のkitajimaです。弊社サービスピクトリンクは、システム再構築の一環として

    FURYU Tech Blog-フリューテックブログ | Furyu Tech Blog
  • iOSの月額課金レシート検証をサーバーサイドで行うときのTipsまとめ - Qiita

    最近、iOSのレシート検証をクライアントのみでの検証からサーバーサイドでの検証に実装を変更する機会があったので、その理由や方法、考慮するべき点などを書きました。参考になれば幸いです! 注意 この情報は2016年8月3日現在のものです。 レシート検証とは? iOSで月額課金をすると、課金の証明としてAppStoreがレシートを発行します。レシートと言ってもAppStoreが紙のレシートを送りつけてくるわけではなく、電子的な購入情報のことをレシートと呼びます。ユーザーが解約処理をしない限りAppStore側でレシートが自動更新される仕組みになっています。(月額課金の場合) その際に、AppStoreのサーバーにHTTPのPOSTリクエストでレシートを問い合わせ、現在の課金状況を知ることができます。このお問い合わせ処理と、レシートが不正なレシートでないかをチェックする処理を合わせてレシート検証と

    iOSの月額課金レシート検証をサーバーサイドで行うときのTipsまとめ - Qiita
  • AppStoreの自動継続定額課金の新ルールについて (Auto-Renewable-Subscriptions)

    今日、仕事終わってUnderTheRadorっていうポッドキャスト聴いてたら、AppStoreの定額課金のルールが変わるとかいう話題になり、「いやいや、またまた。。聞き間違いだろ。。」と思って調べたら、当だった。 僕は、Lisgoで月額課金しようと思って、メディア系ではないからという理由でリジェクトされた過去がありまして、その時のいろいろ調べたら、AppStoreでの自動継続課金は雑誌とかメディア系じゃないと使えないという不可思議なルールがあることを知りました。 その時の記事がこちら。(今はあまり読む価値はないので飛ばしてもOK。) iPhoneの月額課金で直面するマニュアルにないルール かいつまんで説明すると、メディア系でないサービスは、AppStoreのIDを使った自動継続課金は使えず、自分でIDを管理する仕組みをサーバ側で用意して、わざわざユーザにログインしてもらって、なおかつ自動

    AppStoreの自動継続定額課金の新ルールについて (Auto-Renewable-Subscriptions)
  • 『自動購読課金について【iOS編】』

    はじめに AWAサーバサイドエンジニアの辻(jun06t)です。 今回はiOSとAndroidの月額課金のための実装について書かせていただきます。 形式として読み物と言うよりドキュメントっぽくなっています。 理由は私が実装しようとした際に実装方法についてまとめて書かれた記事が少なく、「検証時に使えるフィールドはどれだろう?」「昔はこうだったけど、今は違う?」「Androidではできるけど、iOSではできない(逆も然り)」など、色々と分からない部分が多くとても困ったためです。 やや長い記事となったため、iOSの実装を前編、Androidの実装を後編として説明させていただきます。 注意事項 ※1:開発中にプラットフォーム側の仕様変更があったなど、記載している内容は情報が古い可能性があります。 ※2:記載している動作は十分に調査できていないものも含んでいるため、内容が不正確である可能性があること

    『自動購読課金について【iOS編】』
  • 失敗しない iOS In-App Purchase プログラミング - A Day In The Life

    最近、無料アプリや無料ゲームにアプリ内課金を設置してユーザにアイテムを購入してもらうタイプのものが増えています。App Store トップセールスのうち半数以上がこの無料 + アプリ内課金で占められています。今後アプリ内課金は iPhone/iPad アプリで儲けるための必須の機能になると言っても過言ではありません。 今回はアプリ内課金(In-App Purchase)のプログラミングについて StoreKit フレームワークの基的な使い方から失敗しないためのポイントまで説明していきます。 販売できるアイテムの種類は5種類 アプリ内課金で販売できるアイテムの種類は5種類あります。 Consumable 消費アイテム。ユーザがアイテムを使うと無くなる。例えばシューティングゲームの弾丸やコイン落としゲームのコインなど。同じアイテムを何回でも購入可能 Non-Consumable 非消費アイテ

    失敗しない iOS In-App Purchase プログラミング - A Day In The Life
  • In-App Purchaseについて

    In-App Purchaseを使用すると、StoreKitフレームワークを使用してアプリケーション内にストアを組み込むことができます。このフレームワークはアプリケーションの代理としてApp Storeに接続して、ユーザーによる支払いを安全に処理することで、ユーザーに対して支払いの承認を促すものです。フレームワークは次にアプリケーションに通知を行い、これにより購入した項目がユーザーに提供されます。In-App Purchaseは、追加の機能やコンテンツの支払いの回収に使用します。 たとえば、In-App Purchaseを使用すると、次のようなシナリオを実行することができます。 追加のプレミアム機能が備わったアプリケーションの基バージョン ユーザーが新しい記事を購入してダウンロードできる雑誌アプリケーション 探索する新しい階層を提供するゲーム プレーヤーが仮想の不動産を購入できるオンライ

  • iPhoneの月額課金はツール系で使えるか

    ※追記 2013/06/15 これはだいぶ前の記事だけど、結局、Auto-Renewing Subscriptionsは今まで通りの気配。。最近、アップルの課金関係のエバンジェリストにメールで聞いたら、「最終的に決めるのはReveiw Teamだからわからないけど、基的に機能にたいしてはAuto-Renewableは使えないよ。」みたいな返信をもらった。残念すぎる。 どこまでが機能で、どこまでがMediaと認識されるかという線引きはよくわからないけど、特に今までとルール適用の方針は変わらないのだろうか。 —— ここから以前の記事 知り合いに教えてもらったんだけど、ちょっと前にApp Store Review Guidelinesが変更されてたみたい。これ読む限りでは新聞とか雑誌系のアプリ以外でも自動継続課金(auto-renewable subscriptions)が使えるようになったの

    iPhoneの月額課金はツール系で使えるか
  • 新しい定期購読型のアプリ内課金を実装してみた (Auto-renewable Subscriptions)

    [追記1] サンドボックス環境では自動継続がある条件下でオフになることがあるそうです。 この記事の情報は不正確な可能性があるため、近日中に検証します。 [追記2] 調査したところ、iPadで2ヶ月購読した場合は動作することは確認できました。 ただ現状ではアプリに組み込んでリリースするのは危険だとは思います。 参考 Auto-Renewable Subscrptionに関する問題など 注意点 まだ新しい定期購読型のアプリ内課金を使ったアプリはリリースしていません。 不明な点があるため間違いなどありましたら、ぜひご連絡ください。 特に自動更新後、アプリ側から有効期限を確認する方法が正しいかどうかが不明です。 新しい定期購読型のアプリ内課金は何が違うの? 新しい定期購読型のアプリ内課金は、Appleが2011/2/15に発表した自動更新型の課金サービスです。 今までもアプリ内課金では購読型(Su

    新しい定期購読型のアプリ内課金を実装してみた (Auto-renewable Subscriptions)
  • 1