[iOS 11] Apple Musicとの連携を行うための「MusicKit」について #WWDC17

はじめに

こんにちは。モバイルアプリサービス部の平屋です。

WWDC17のKeynotePlatforms State of the Unionで紹介されていたMusicKitの概要を調べてみましたので紹介します。

MusicKit

MusicKitを使用すると、以下のような処理を実行できます。

  • アプリやゲームからApple Musicまたはローカルの音楽ライブラリの曲を再生する
  • Apple Musicの曲をライブラリに追加する
  • Apple Musicのメンバーではないユーザーに対し、Apple Musicのトライアルへ誘導する

MusicKitを構成する要素

MusicKitの実体は、Media PlayerおよびStoreKitフレームワーク、Apple Music APIのようです。

MediaPlayer

iOS 2.0から存在するフレームワークです。アプリ内で曲、ポッドキャスト、オーディオブックなどの再生や検索などを行うためのフレームワークです。

StoreKit

iOS 3.0から存在するフレームワークです。アプリ内でコンテンツおよびサービスを販売するためのフレームワークです。

StoreKitはApple Musicの登録画面なども提供します。

Apple Music API

Apple Musicに関する各種情報の取得などを行うためのWeb APIです。APIリファレンスの履歴を見る限り、最近新設されたAPIのようです。

このAPIを使用すると、以下のような処理を実行できます。

  • アルバム情報の取得
  • アーティスト情報の取得
  • チャートの取得
  • 検索の実行
  • ユーザーがよく聞いている曲の取得
  • ユーザーが最近聞いた曲の取得
  • ユーザーのレーティング情報の取得

公式ミュージックアプリでできることは大体できるような気がします。

サンプルコード

MusicKitの機能を試すためのサンプルコードは以下のURLからダウンロードできます。

このサンプルコードには、Media PlayerおよびStoreKitフレームワーク、Apple Music APIを使用して、以下を実行する実装が含まれています。

  • Apple Musicまたはローカルの音楽ライブラリへのアクセスをリクエストする
  • Apple Music加入者設定フローを提示する
  • Apple Music Webサービスを使用して、Apple Musicカタログで曲とアルバムを検索する
  • ローカルまたはiCloud Music Libraryにプレイリストを作成し、項目を追加する
  • Apple Musicの曲またはアプリで作成したプレイリストを再生する

関連セッション

以下のセッションでMusicKitの紹介があるようです。

  • タイトル
    • Introducing MusicKit
  • 日時
    • 6/6 15:10(PDT)

さいごに

本記事では、MusicKitの概要を紹介しました。

MediaPlayerやApple Musicまわりのアップデートとしては、ここ最近では一番大きいアップデートだったような気がします。

今回は概要を調査するだけで終わってしまったので、今後サンプルコードやAPIを触っていきたいと思います。

参考資料