はじめに
AR? なんか難しそう。とか思って遠くから眺めてるだけだったんですけど、機会があったのでチャレンジ。
metaio使って、チュートリアルをこなします。
# ちなみにObjective-CどころかiOSでの開発経験プライベートでもほぼゼロです。
準備
Apple Developer Programには登録してある前提。これ手間なんで、これだけで記事書けそうな気がする。
metaioにDeveloper登録する
はじめにmetaioのDeveloper登録します。
metaio Developer Portalにアクセスして、右上の Sign up を押して登録画面に行きます。
必要事項を入力して登録、たしかメールが届くので、確認してPortal画面に行きます。
SDKをダウンロードして、お好きなところに展開。これでmetaioの準備完了です。
metaioにアプリ登録する
そのままの流れで、アプリを登録します。
ポータル画面の上のメニューの「My Apps」をクリック、この画面でアプリを登録して識別子を発行してもらいます。
下の方に「App registration」があるので、ここでお好きなアプリ名、お好きな識別子を登録します。
このIdentifier
はめちゃくちゃ重要なので、ちゃんと設定しておくとよいと思います。
とりあえずSDK Signature
のVersion 6.xのキーをコピっておきます。この画面はいつでも見ることができるので、あとで参照しにきてもいいです。
Xcodeにプロジェクトを作る
Xcodeでプロジェクト作ります。詳細な手順は省きますけど、とりあえずSingle View Applicationでいいと思います。
重要なのはProduct name
とOrganization Identifier
。Bundle Identifier
が上で登録したIdentifier
と一致している必要があります(・・・ですよね?)。
お好きなところにプロジェクトを作って準備完了。
frameworkを登録する
metaioSDKはSDKであるからして、ちゃんとプロジェクトに突っ込まないと動きません。
XcodeでGeneral
を選択し、下の方のLinked Frameworks and Libraries
にframeworkを登録します。
これで metaioSDKは 登録できました。次は依存してるいろいろを追加していきます。
最終的にこんな感じになります。多分不必要なやつも混じってますけど、それはおいおい削っていくことにします(この記事では多分やりません)。
signatureを登録する
上でコピったSignature
をXcodeに登録します。
が、これ多分ばれたらよろしくないやつなので、なんとか隠蔽する方法考えます。
よくわからないんですけど、とりあえずプロジェクトルートにSettings
とかなんとか適当にディレクトリ切って、そこにmetaiosdk.xcconfig
とmetaiosdk.xcconfig.org
の二つのファイルを作り、そこに秘密にしておきたいものを突っ込みます。
$ mkdir Settings
$ echo "METAIO_LICENSE_STRING = yoursecretkey" > Settings/metaiosdk.xcconfig.org
$ cp Settings/metaiosdk.xcconfig.org Settings/metaiosdk.xcconfig
で、metaiosdk.xcconfig
の方の値を上でコピったSignature
を上書きします。
これをXcodeのツリーに適当にグループ作ってFinderからDnD。
こんな感じ。
次に、このxcconfigファイルをプロジェクトに読み込ませるように? する。
プロジェクトを選択して、Configuration
を選択、Debug
とRelease
にxcconfigファイルを設定します。
すると、Build Settings
の下の方のUser-Defined
にMETAIO_LICENSE_STRING
が追加されてると思います。
続いて、左側のツリーのmetaiosample > Supporting Files
のInfo.plist
を開き、新しく項目を追加します。
キーはMetaioLicenseString
、値は$(METAIO_LICENSE_STRING)
。これで別ファイルに分離しつつSignature
を登録することができました。
あとは.gitignore
に書いておくとかすればコミットされません。
開発
上記で準備が完了しました。ここからはチュートリアルを参考にしつつ、なんやかややっていきます。
storyboard
metaiosdkのために、storyboardを変更します。
Main.storyboard
を開き、左ツリーのViewをクリック、Delete。
続いて右下からGLKit View
を探して選択し、StoryboardにDnD。
さらに右クリックし、Referencing Outlets
の右の⚪︎をクリックして、DnD。
glkViewを選択して、また右クリックして追加されてることを確認します。
import
さっさと次いきます。
ViewController.hを以下に変更します。
# import <metaioSDK/MetaioSDKViewController.h>
@interface ViewController : MetaioSDKViewController
@end
また、MetaioSDKはObjective-C++で書かれてるらしいので、ViewController.mの拡張子を.mmに変更しておきます。
とりあえずここで確認
ここまで行けば、とりあえず動きます。
iPhoneをつなぎ、Runしてみると、カメラだけとりあえず起動します。
とりあえず今日はここら辺で。