月別アーカイブ: 2015年4月

【ソース管理】SourceTreeで快適ソース管理1

開発に欠かせないソース管理ツール。今回はその中でもSourceTreeというツールの使い方をご紹介したいと思います。

まず、ソース管理とは、複雑なプログラムの開発状況をスムーズに管理し、また円滑にチーム開発などを行うために必須な作業となります。

前提

・XCodeのプロジェクトが存在している
・Githubアカウントを持っている

ソース管理ではいろいろなコマンドが用意されているのですが今回は基本的なコマンド
・Commit
・Push

について説明しつつ、SourceTreeの使い方を説明していきます。

まず、XCodeで今回ソース管理する対象の「SampleTree」というプロジェクトを作成します。このときファイルをどこへ保存するか聞かれるタイミングで、Source Controlに関するティックが、図のように下部に現れます。これを図の通りのままにして、プロジェクトを作成してください。
スクリーンショット 2015-03-27 14.14.03

ここで、「Create Git Repository」という言葉が出てきました。
実は、このティックをつけることでローカルリポジトリファイル(.git)を作ることができます。

リポリジトリとは?

.gitは隠しファイルなのでFinderで見ても存在するかわかりません。
ターミナルで隠しファイルを表示するオプションをつけてlsコマンドを実行することで確認できます。
スクリーンショット 2015-03-27 14.26.29

リポジトリファイルとはソース管理の基となるファイルで、「貯蔵庫」という意味になります。
ここにプロジェクト全体の変更点を保存しておき、ファイルをある時点の状態に戻したり、履歴を確認したりすることができるようになります。

リポジトリファイルにも2種類あり、
・ローカルリポジトリ
・リモートリポジトリ

というリポジトリファイルが存在します。

ローカルリポジトリ

作業中のPC内に存在するリポジトリファイルです。CommitというGitコマンドを使って、変更点の履歴を保存していきます。今回はXCodeでローカルリポジトリを作成した状態からSourceTreeで操作を行います。

リモートリポジトリ

ソースを管理する為のサーバー上に存在するリポジトリファイルです。PushというGitコマンドを使って、ローカルリポジトリの履歴をサーバー上にUploadし保存することが可能です。今回はリモートリポジトリの保存場所として「Github」というホスティングサービスを利用していきます。

GitコマンドとSourceTree

ソース管理をおこうなう専用のコマンドです。使用するにはPCにGitソフトをインストールする必要がありますが、XCodeがインストールされているMacでは既にGitもインストール済みなのでXCodeがインストールされているMacには改めてインストールする必要はありません。Gitコマンドは通常、ターミナルからコマンドライン(CUI)ベースで実行するものなのですが、Gitコマンドを見やすい形で操作するためのツールがSourceTreeになります。

SourceTreeはこちらのサイトからダウンロードが可能です。

SourceTreeにプロジェクトを追加する

早速実際に使ってみましょう。
起動し、「新規リポジトリ」ボタンを押し、「既存のローカルリポジトリ」をクリックします。
スクリーンショット 2015-03-27 15.33.07

次に、用意しておいたSampleTreeプロジェクトのフォルダを指定し、開きます。
スクリーンショット 2015-03-27 15.40.11

そうするとSourceTreeの初期表示リストにSampleTreeプロジェクトが追加されたことを確認できます。
スクリーンショット 2015-03-27 15.46.38

Commit

ここから、プロジェクトの変更をSourceTreeを使用してCommitしていきます。
まず、コンソールにHello,World!とだけ表示するプログラムをViewControler.mというファイルに記述し、ファイルを変更しておきます。
そのあと、SourceTreeを開き、SampleTreeプロジェクトをダブルクリックすると下の図のように、変更点を確認できる画面が表示されます。
スクリーンショット 2015-03-27 16.09.25

変更点を保存するために「作業ツリーのファイル」にティックをつけると変更点のあるファイルが全て「ステージされたファイル」の方へ移動します。(ファイル個別に移動することも可能です)
スクリーンショット 2015-03-27 16.13.29

コミットするためにはメッセージを記載する必要があります。記載しようとすると、下記のような画面が表示されます。
スクリーンショット 2015-03-27 16.20.34
ここでの「コミットに紐づくユーザー情報」というのはGithubアカウント情報になります。事前にGithubでアカウントを作成しておきその情報を入力しておきましょう。

アカウント情報を入力するとメッセージが記載できるようになるので記載してコミットボタンを押します。これでローカルリポジトリに変更点を保存しておくことができました。
スクリーンショット 2015-03-27 16.23.40

Push

ローカルリポジトリにコミットがたまったら、次はそれをリモートリポジトリにPushしましょう。チーム開発で複数人で共有する場合、またバックアップの観点からも定期的なPushが必要です。
Pushを行うにはまずローカルリポジトリとリモートリポジトリの紐付けを行います。

最初にGithubにログインしてからのリモートリポジトリを作っておきましょう。ここでは前提として「https://github.com/ei17ringo/sampletree」というリモートリポジトリを用意しています。

下図の設定ボタンをクリックして、リモートリポジトリを指定します。
スクリーンショット 2015-03-27 18.49.50
スクリーンショット 2015-03-27 19.01.25

設定が終わった後は、pushを押します。下記画面で左端のティックをつけてOKを押すと完了です。
スクリーンショット 2015-03-27 19.05.04

【iOSアプリ開発】SampleiAd作成手順

現在開発中のiOSアプリに広告を入れようとする際、その方法やメディエーションはいくつか選択肢があります。

その中でもApple純正メディエーションiAdの導入方法を今回はご紹介したいと思います。

iAdって何?と思われた方は下記リンクを御覧ください。
http://ja.wikipedia.org/wiki/IAd

  • 前提:SingleViewApplicationを選択して作成したプロジェクトであること

1.プロジェクトにiAdフレームワークを追加

  • 左のツリー表示から青いプロジェクトファイルを選択
  • Linked Frameworks and Librariesにて『+』ボタンをクリック
  • 現れたウィンドウ上の検索パネル「iAd」と検索し、Addボタンで追加

72c6f80e-1d2e-d0c0-ceec-50afe7d5e8b8

2.ViewController.h に 2点追加

  • #import <iAd/iAd.h>
  • <ADBannerViewDelegate>

こんな形になります。

ViewController.h

3.メンバ変数 _adView を追加

ViewController.m

4.ViewDidLoadの中にバナーを画面上部に隠しておく形で設置するコードを記述

ViewController.m

5.バナー表示が成功したら発動するDelegateメソッドbannerViewDidLoadAdをViewDidLoad下に追加

ViewController.m

6.バナー表示が失敗した時に発動するDelegateメソッドdidFailToReceiveAdWithErrorもbannerViewDidLoadAd下に追加

ViewController.m

7.バナーが画面上に表示されているか否かを判別するフラグ_isVisibleをメンバ変数で用意

ViewController.m

8. viewDidLoadではまだバナー表示されていないためNOを設定しておく

ViewController.m

9. bannerViewDidLoadAdに_isVisibleを判別し、表示されていない時だけ表示する処理が実行されるようなif文を追加

  • 表示処理後は_isVisible = YESにセット
ViewController.m

10. didFailToReceiveAdWithErrorに_isVisibleを判別し、表示されている時だけ非表示にする処理が実行されるようなif文を追加

ViewController.m