Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.

3.07. Google Play Services

hidey edited this page Dec 23, 2014 · 9 revisions

GitHub Pagesへ移行しましたmixi-inc.github.ioへお願いします。

wikiの方はしばらくしたら消していきます

この章では、Google Play が提供する各種 API 群である Google Play Services について解説します。

目次

  • [Location API](#Location API)
    • [Fused Location Provider](#Fused Location Provider)
    • [Geofencing API](#Geofencing API)
    • [Activity Recognition](#Activity Recognition)
  • [Games API](#Games API)
  • [Google Plus API](#Google Plus API)
  • [In-App Billing API](#In-App Billing API)

Location API

Google Play が提供する、位置情報の API 群です。

Fused Location Provider

新しい位置情報 API で、携帯回線、WiFi、GPSによる正確な測位と、消費電力の削減を実現しつつ、シンプルな API を提供しています。
開発者は、測位システムの詳細を知る必要はなく、API で提供されているインタフェースに沿ってプログラムを書くことで、位置情報を得ることが出来るようになります。

Geofencing API

新しい位置情報 API で、ユーザが特定の範囲の位置(ジオフェンス)に入ったり、そこから出たりしたことを知る為の API です。

Activity Recognition

ユーザの行動認識の為の API で、止まっている、歩いている、走っている、自転車に乗っている、自動車に乗っている、などといった行動認識が実現出来ます。

Games API

ゲーム用途に特化した API です。
ゲーム向けの様々な API が用意されていますが、純粋なゲームにかぎらず、ゲーミフィケーションアプリにも用いることができます。

Cloud Save

Achievement

LeaderBoard

Google Plus API

Google+ との連携をするための API です。

In-App Billing API(アプリ内課金)

Googleによるアプリ内課金サービスの事で、現在最新のバージョンは v3 です。

アプリ内課金仕組みの図

Google Playの課金体験を自分のアプリ内で提供する事になるので、

  • Google Playから配信されているアプリに限る
  • Googleのサーバーとの通信が発生し有効なネットワーク接続が必要
  • Google Play Serviceの有無とバージョンに依存する
  • API >= 2.2 という制限があります。 また、
  • 払い戻しはありません
  • Google Walletを使って手動で対応しなければならない
  • デジタルグッズの販売にしか使えない
  • 物理的な品物やリアルなサービス等は販売できません
  • 課金(決済)のみを管理します
  • 購入の結果(機能の有効化、ポイントの加算等)は自分で実装します
  • 課金対象のアイテムはアプリ間での共通化は不可能
  • one app one item

ちなみにGoogle Playで配信するアプリ内でGoogle Playを通らないで課金する事はグーグルの規約に禁止されています。

Subscription(定期購入)にも対応している。

商品追加・管理

Developer console( http://play.google.com/apps/publish )上で行います。 詳しいフローはこちら http://developer.android.com/google/play/billing/billing_admin.html に纏まっています。

商品の追加は、UIからいちいち行うかcsvでバッチ追加できます。 ユーザにはpublishedに設定された商品しか見えません。 商品の種類という設定としては、

  • Managed per user account: ユーザアカウントに紐付かれて、Google Playが管理します(購入履歴を保存したり)
  • Unmanaged: 購入されて配信されたら、サービス側では忘れる商品(Google Playは管理しない)
  • Subscription: 定期的に決済される商品 があります。

Reference

Exercise

ベースのコードを編集し、アプリ内課金APIを使ってボタンクリックに該当アクションを行って、その結果をshowResultで表示する様にして下さい。「IMP here」というコメントは実装開始点のヒントです。

solutionディレクトリに実装の提案が置いてあります。

GitHub Pagesへ移行しましたmixi-inc.github.ioへお願いします。

Clone this wiki locally