2017年03月29日

[iOS] AWSでビルドエラー(Undefined symbols for architecture arm64)になる

前回、XcodeプロジェクトにCocoaPodsを使ってAWS SDK を追加することに成功しました。

[iOS] CocoaPodsを初めて使ってみたら「linker command failed with exit code 1」でビルドエラーになる

いざ、Congnitoを使って認証しようかとプログラムを書き始めたところ
リンクエラーのようなものが出ました。

↓プログラム
------------------------------------------------------
AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionAPNortheast1
identityPoolId:CONGNITO_POOL_ID];
AWSServiceConfiguration *configuration = [[AWSServiceConfiguration alloc] initWithRegion:AWSRegionUSEast1
credentialsProvider:credentialsProvider];
AWSServiceManager.defaultServiceManager.defaultServiceConfiguration = configuration;
------------------------------------------------------

↓エラー内容
------------------------------------------------------
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_AWSServiceManager", referenced from:
objc-class-ref in HundredSquaresCalcAppDelegate.o
"_OBJC_CLASS_$_AWSServiceConfiguration", referenced from:
objc-class-ref in HundredSquaresCalcAppDelegate.o
"_OBJC_CLASS_$_AWSCognitoCredentialsProvider", referenced from:
objc-class-ref in HundredSquaresCalcAppDelegate.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
------------------------------------------------------

プログラム参考:
http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/step1-getting-started.html

なんと、前回CocoaPodsでAWS SDKを追加が完了したと思いきや、
元のプロジェクトに対してCongnitoのフレームワークの追加が必要なのでした。

リンクエラー修正.png

こうやって元のプロジェクトにAWS SDKのフレームワークを追加することで、
無事ビルドが通ったのでした。

初めてのことは、必ずハマる箇所があるなー。
posted by be-style at 10:17| Comment(0) | iOS

[iOS] CocoaPodsを初めて使ってみたら「linker command failed with exit code 1」でビルドエラーになる

AWSのiOS用SDKを使うために、CocoaPodsを使う必要が出てきました。

http://qiita.com/SoyaTakahashi/items/fdb0d87597eb276056d8
http://docs.aws.amazon.com/ja_jp/mobile/sdkforios/developerguide/setup-aws-sdk-for-ios.html

を参考にして、既存のXcodeプロジェクトに適用し、
出来た「.xcworkspace」ファイルをダブルクリックして
Xcodeを立ち上げたところ、

linker command failed with exit code 1

というビルドエラーが出て、AWSに関するリンクエラーが表示されました。
原因は、新しくできた「Pods」プロジェクトの設定が、元のプロジェクトの設定と
一致していないことでした。

↓赤で囲った部分が、元のプロジェクトと違っていたので修正した

cocoapod20170329.png

これでビルドが通って、無事iPhoneでも起動確認ができました。

参考:
http://qiita.com/sutchan/items/0a78042261ca3f0a7d91

環境まわりって、いつも設定に時間がかかるなー。
posted by be-style at 09:09| Comment(0) | iOS

2017年03月21日

[Unity] ゆるくやせる (Android)をリリースしました!

iOS版としてリリースしていた「ゆるくやせる」というダイエット支援アプリの
Android版がリリースされました!

iOS版ではネイティブの機能であるピッカーとかアラートを使っていたのですが、
今回、両OSに対応させるためにUnityですべて実現させました。
iOSっぽく見せるのに苦労しましたが、完成してよかったです。

ただ両OSでリリースしただけでなく、体重を記録できるようにしたり
キャラが追加されたりしています。

iOS版を紹介したときに「Android版は?」と聞かれることがあったので、
これからは胸を張って紹介できます。

よろしかったら、お試しください(>人<)

Google Play:
https://play.google.com/store/apps/details?id=com.revolabinc.yurukuyaseru&hl=ja

App Store:
https://itunes.apple.com/jp/app/%E3%82%86%E3%82%8B%E3%81%8F%E3%82%84%E3%81%9B%E3%82%8B-%E3%83%80%E3%82%A4%E3%82%A8%E3%83%83%E3%83%88/id658227970?mt=8
posted by be-style at 21:41| Comment(0) | Android