カテゴリー
SugiBlog ホームページ制作・システム開発|大阪

macOS High SierraでCocoaPodsのpod updateがエラー

macOSがHigh Sierraになり、Xcodeもアップデートされ、
色々と警告が出るようになっていたので、これを解消しようと思ったら
色々つまづいたので書いておきます。

まずはライブラリをアップデートする必要があるようなのでpod updateコマンドを実行。
すると以下のようなエラーが発生。

-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory

どうやらmacOSがHigh Sierraだとエラーが発生する模様です。

Rubyをアップデートするために以下のコマンドを実行。

sudo gem update --system

エラーが発生。

ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted @ rb_sysopen - /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/gem

その場合は以下のようなコマンドにするらしいですが、
実行してみると既にインストール済と言われます。

sudo gem update --system -n /usr/local/bin

次にCocoaPodsをアップデート。

sudo gem install cocoapods

これも途中でエラーが発生。

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /usr/bin directory.

コマンドにオプションを付けてやり直し。

sudo gem install -n /usr/local/bin cocoapods

正常にインストールが完了しました。
続きを読む…»

0
3,095 views

Swift3で剰余を求める

剰余(割り算の余り)を求めたいとき、「Mod」か「%」を知っていれば事足りていたのですが、Swift3ではできないケースがありましたので、メモしておきます。

Intでは「%」で大丈夫なようですが、FloatやDoubleの場合はエラーになります。

Doubleの場合(Floatも同様)

let n: Double = 12.0
n.truncatingRemainder(dividingBy: 10.0)
0
727 views

iOSでデータベースRealmを使う

iOSアプリでデータベースを使ってみたいと思います。
色々あるようですが、今回は「Realm(レルム)」を選定しました。
Realm公式サイト:https://realm.io/jp/

まずはインストールから始めてみましょう。
realmのドキュメントを参考に進めます。

CocoaPodsのSpecリポジトリ更新

ターミナルを開き、コマンドを実行

pod repo update

Realmのインストール

インストールしようとしているプロジェクトのディレクトリに移動します。

cd <path-to-project>

続きを読む…»

0
876 views

Macでのスクリーンショット

普段はWindowsを使っているので、Macでのスクリーンショットを撮る方法の覚書です。

画面全体のスクリーンショットを撮る
shift + command + 3

画面の一部分を選択してスクリーンショット
shift + command + 4
カーソルが十字になるので、保存したい範囲を選択
取り消しはesc

ウィンドウのスクリーンショットを撮る
shift + command + 4
その後、スペース
保存したいウィンドウをクリック

シャドウ無しのスクリーンショットが良ければ、
optionを押しながらウィンドウをクリック

0
693 views

GoogleMapに現在地を表示

Info.plistに位置情報の利用を追加します。
GoogleMapに現在地を表示するだけなら、CoreLocationは必要ないようです。

Privacy - Location When In Use Usage Description

Valueには「現在地の情報を利用します」等としておきます。

GoogleMapの表示方法については[iOSアプリでGoogleMapを使う]をご覧ください。

位置情報を利用して現在地を表示する

googleMap.isMyLocationEnabled = true

現在地ボタンを表示する

googleMap.settings.myLocationButton = true

Xcode: 8.2.1
Swift: 3.1
OS: Sierra 10.12

0
1,897 views

iOSアプリでGoogleMapを使う

地図を使ったiOSアプリを開発するにあたって、標準マップとGoogleMapのどちらを使おうかと調べてみたら、以下のサイトで違いが紹介されていました。
http://web-terminal.blogspot.jp/2013/06/google-maps-sdk-for-iosmapkit.html
マーカーの扱いの違いで私はGoogleMapを使うことにしました。

まずは、表示できるところまでやってみようということで、その流れをご紹介したいと思います。

Xcodeのバージョンが6.3以降であることを確認します。※17/03/02時点

CocoaPodsという依存関係を管理するためのオープンソースのツールが必要になりますので入手します。

ターミナルで以下のコマンドを実行します。

sudo gem install cocoapods

CocoaPodsを使ってプロジェクトにGoogle Maps SDK for iOSを組み込みます。
プロジェクトのディレクトリ(.xcodeprojファイルがあるところ)に「Podfile」という名前のファイルを作成します。
ターミナルでプロジェクトのディレクトリに移動し以下を実行

cd <path-to-project>
vim Podfile

以下の内容を記述しファイルを保存します。

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.1'
pod 'GoogleMaps'

pod installコマンドを実行します。
Podspecで指定されているAPIが、その依存関係(存在する場合)とともにインストールされます。

pod install


この作業、結構時間がかかります。 続きを読む…»

0
1,980 views

MacBook ProでiOSアプリ開発(Xcode&Swift3.1)

会社でMacBook Proを購入してみました。
インターフェイス、少ないですね。。
追加でUSBとType-Cの変換アダプターを注文しました。

早速、Xcode8.2.1をインストール

Swiftは初めてなので、とりあえずPlaygroundで遊んでみてます。

開発する中でまた何か有用なことがあれば書いていきたいと思います。

0
841 views