2014-11-01から1ヶ月間の記事一覧
今回は、前回の続編として、「.framework」ファイルを自作する方法の最終回として「手順5.Frameworkをビルドし利用する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhon…
今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順4.Frameworkで実行したい処理をクラスとして追加する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている…
今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順3.Targetを作成し、Run Scriptを設定する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhoneア…
今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順2.Property Listを作成する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhoneアプリ開発自作F…
Appleが提供するライブラリの多くも「.framework」ファイルで提供されており、iOSアプリ開発におけるライブラリの一般的な形式の一つと言える。 しかし、「.framework」ファイルを作成しようとXcodeのテンプレートを探しても該当するものが存在しない。 今回…
Notification(通知)は、任意のオブジェクトに対して、メッセージを通知する仕組みである。 今回はNotification(通知)の使い方を紹介する。 Notification(通知)は非常に便利な仕組みであるが、多用するとソースコードの可読性を損なう恐れがある。 特に複数人…
デリゲートは委譲とも呼ばれ、あるオブジェクトの処理の一部を、別のオブジェクトに処理させることを指す。 Appleから提供されているライブラリにも、この仕組みは多用されているので、開発中に使用する機会は多い。 今回は、このデリゲートの仕組みを自作す…
過去3回iOSアプリ開発における定数定義方法を紹介してきた。 ・iOSアプリ開発における定数定義の方法【基本編】 ・iOSアプリ開発における定数定義の方法【環境毎設定編】 ・iOSアプリ開発における定数定義の方法【マクロ使用編】今回は現時点で筆者が考える…
以前iOSアプリ開発における定数定義の方法として、「extern」を使用する方法を紹介した。 今回はマクロを使用した別の定数定義方法を紹介する。 1. 定数を定義する専用のクラス「AppConsts」を作成する 2. 「.h」ファイルに「#define」を用いて定数を定義す…
本番環境・テスト環境で、アプリが接続するサーバURLが異なる事は少なくない。 この様に定数でありながら、条件により有効になる値を変更する必要がある場合の、定数定義の方法を紹介する。 (基本的な定数定義の方法は、「iOSアプリ開発における定数定義の方…
Xcode6.xで新規にプロジェクトを作成すると、Xcode5.xまでデフォルトで作成されていた「-Prefix.pch」が作成されなくなっている。 今回はXcode6.xで「-Prefix.pch」を手動で追加する方法を紹介する。 1.プロジェクトツリー上でファイルを追加する 2.Prefix H…
サーバからiPhoneに大きなファイルをダウンロードする場合、zip圧縮して通信容量を削減することは少なくない。 今回は、iOSアプリでzipファイルを解凍する方法を紹介する。 1.ライブラリSSZipArchiveをダウンロードする 2.ライブラリSSZipArchiveをプロジェ…
前回はNSXMLParserを使用して、XMLデータを解析する方法を紹介した。 ただ、前回紹介した方法は、性能面で問題点がある。今回はその問題点に対する改善策を紹介する。 下記の実行結果からも分かるように、取得したいcountの値は4行目で取得できているにも関…
今回はiOSアプリでXMLをNSXMLParserを使用して解析する方法を紹介する。 NSXMLParserは「libxml2.dylib」を必要とするので、プロジェクトに追加しておくこと。 最初にNSXMLParserの主なデリゲートメソッドを紹介しておく。 これらのデリゲートメソッドを使用…
iOSアプリから、そのアプリが実行されているデバイス(端末)の種類を取得する方法を紹介する。用途としては、サーバ連携があるアプリで、実行デバイスの情報を収集する等が考えられる。ソースコード> // 使用するクラスで「<sys/sysctl.h>」をインポートしておく size_t siz</sys/sysctl.h>…
UI画面のカクつきを軽減するために、内部処理を別スレッドで実施することは少なくない。 その際、NSURLSessionでサーバ通信を行う場合、設定に気をつけないと通信結果がメインスレッドに返却されていまい、結果として画面のカクつきを引き起こしてしまう。今…
iOSアプリで端末からサーバに対して大きなデータを通信する際に、通信データをgzipに圧縮して通信を行うことがある。 今回は、iOSアプリでデータをgzip圧縮する方法を紹介する。具体的には、NSData型のデータを引数として受け取り、gzip圧縮したデータをNSDa…