iOSアプリ開発においてFrameworkを自作する方法【手順5】

今回は、前回の続編として、「.framework」ファイルを自作する方法の最終回として「手順5.Frameworkをビルドし利用する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhon…

iOSアプリ開発においてFrameworkを自作する方法【手順4】

今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順4.Frameworkで実行したい処理をクラスとして追加する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている…

iOSアプリ開発においてFrameworkを自作する方法【手順3】

今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順3.Targetを作成し、Run Scriptを設定する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhoneア…

iOSアプリ開発においてFrameworkを自作する方法【手順2】

今回は、前回の続編として、「.framework」ファイルを自作する方法の「手順2.Property Listを作成する」を紹介する。繰り返しになるが、「.framework」ファイルを自作する方法に関しては、下記のサイトで非常に丁寧に紹介されている。 iPhoneアプリ開発自作F…

iOSアプリ開発においてFrameworkを自作する方法【手順1】

Appleが提供するライブラリの多くも「.framework」ファイルで提供されており、iOSアプリ開発におけるライブラリの一般的な形式の一つと言える。 しかし、「.framework」ファイルを作成しようとXcodeのテンプレートを探しても該当するものが存在しない。 今回…

iOSアプリ開発におけるNotification(通知)の使い方

Notification(通知)は、任意のオブジェクトに対して、メッセージを通知する仕組みである。 今回はNotification(通知)の使い方を紹介する。 Notification(通知)は非常に便利な仕組みであるが、多用するとソースコードの可読性を損なう恐れがある。 特に複数人…

iOSアプリ開発においてデリゲートを自作する方法

デリゲートは委譲とも呼ばれ、あるオブジェクトの処理の一部を、別のオブジェクトに処理させることを指す。 Appleから提供されているライブラリにも、この仕組みは多用されているので、開発中に使用する機会は多い。 今回は、このデリゲートの仕組みを自作す…

iOSアプリ開発における定数定義の方法【最適解編】

過去3回iOSアプリ開発における定数定義方法を紹介してきた。 ・iOSアプリ開発における定数定義の方法【基本編】 ・iOSアプリ開発における定数定義の方法【環境毎設定編】 ・iOSアプリ開発における定数定義の方法【マクロ使用編】今回は現時点で筆者が考える…

iOSアプリ開発における定数定義の方法【マクロ使用編】

以前iOSアプリ開発における定数定義の方法として、「extern」を使用する方法を紹介した。 今回はマクロを使用した別の定数定義方法を紹介する。 1. 定数を定義する専用のクラス「AppConsts」を作成する 2. 「.h」ファイルに「#define」を用いて定数を定義す…

iOSアプリ開発における定数定義の方法【環境毎設定編】

本番環境・テスト環境で、アプリが接続するサーバURLが異なる事は少なくない。 この様に定数でありながら、条件により有効になる値を変更する必要がある場合の、定数定義の方法を紹介する。 (基本的な定数定義の方法は、「iOSアプリ開発における定数定義の方…

Xcode6でPCHファイルを追加する方法

Xcode6.xで新規にプロジェクトを作成すると、Xcode5.xまでデフォルトで作成されていた「-Prefix.pch」が作成されなくなっている。 今回はXcode6.xで「-Prefix.pch」を手動で追加する方法を紹介する。 1.プロジェクトツリー上でファイルを追加する 2.Prefix H…

iOSアプリでzipファイルの解凍を行う方法(SSZipArchive)

サーバからiPhoneに大きなファイルをダウンロードする場合、zip圧縮して通信容量を削減することは少なくない。 今回は、iOSアプリでzipファイルを解凍する方法を紹介する。 1.ライブラリSSZipArchiveをダウンロードする 2.ライブラリSSZipArchiveをプロジェ…

iOSアプリでXMLを解析する方法(NSXMLParser)【性能向上編】

前回はNSXMLParserを使用して、XMLデータを解析する方法を紹介した。 ただ、前回紹介した方法は、性能面で問題点がある。今回はその問題点に対する改善策を紹介する。 下記の実行結果からも分かるように、取得したいcountの値は4行目で取得できているにも関…

iOSアプリでXMLを解析する方法(NSXMLParser)【基礎編】

今回はiOSアプリでXMLをNSXMLParserを使用して解析する方法を紹介する。 NSXMLParserは「libxml2.dylib」を必要とするので、プロジェクトに追加しておくこと。 最初にNSXMLParserの主なデリゲートメソッドを紹介しておく。 これらのデリゲートメソッドを使用…

iOSアプリを実行しているデバイスの種類を取得する

iOSアプリから、そのアプリが実行されているデバイス(端末)の種類を取得する方法を紹介する。用途としては、サーバ連携があるアプリで、実行デバイスの情報を収集する等が考えられる。ソースコード> // 使用するクラスで「<sys/sysctl.h>」をインポートしておく size_t siz</sys/sysctl.h>…

iOSアプリ開発における別スレッドで通信する時の注意点(NSURLSession)

UI画面のカクつきを軽減するために、内部処理を別スレッドで実施することは少なくない。 その際、NSURLSessionでサーバ通信を行う場合、設定に気をつけないと通信結果がメインスレッドに返却されていまい、結果として画面のカクつきを引き起こしてしまう。今…

iOSアプリ開発でデータをgzip圧縮する方法

iOSアプリで端末からサーバに対して大きなデータを通信する際に、通信データをgzipに圧縮して通信を行うことがある。 今回は、iOSアプリでデータをgzip圧縮する方法を紹介する。具体的には、NSData型のデータを引数として受け取り、gzip圧縮したデータをNSDa…

iOSアプリが実行されている端末を特定する方法

今回は、作成したiOSアプリが実行されている端末を、一意に識別するためのIDを取得する方法を紹介する。取得したIDをサーバで保持し、同じIDでアクセスしてきた場合は、前回の続きから実行する等の使用方法が考えられる。 「UIDevice」の「identifierForVend…

VMware上のCentOS(Linux)にJava(JRE)をインストールする方法

今回は、以前VMware上に構築したCentOS上にJava(JRE)をインストールする方法を紹介する。今回関係するソフトのバージョンは下記の通りである。 ・Windows 7 Home Premium Service Pack1 ・VMware Player 6.0.1 ・CentOS 6.5 ・JRE(Java SE Runtime Environme…

Windows PCをGitのリモートリポジトリとして使用する方法

今回は、Windows PCをGitのリモートリポジトリとして使用する方法を紹介する。Gitとは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。 故障率を抑えるため、通常はサーバマシンのLinux上に構築したGit…

iOSアプリ開発における定数定義の方法【基本編】

今回は、iOSアプリ開発における定数定義の方法を紹介する。 1. 定数を定義する専用のクラス「AppConsts」を作成する 2. 「.h」ファイルに「extern」キーワードを用いて定数名を定義する 3. 「.m」ファイルに定数に格納する値を定義する 1. 定数を定義する専…

Windows7上でLinux OSを動作させる方法【インストールエラー解決編】

今回は、前回のWindows7上でLinux OSを動作させる方法において、「VMware Player」上に仮想マシンとして、CentOSをインストールしようとした際に、「バイナリ変化は、このプラットフォームのロングモードと互換性がありません。この仮想...」のメッセージが…

Windows7上でLinux OSを動作させる方法

今回は、Windows7上でLinuxOSであるCentOSを(無料で)動作させる方法を紹介する。方法としては、仮想化マシンを構築するためのソフトである「VMWare」を使用する。 「VMware」の中でも個人使用は無料で利用できる「VMware Player」を用いる。今回関係するソフ…

S2JDBCからMySQLに接続する際にコネクションタイムアウトを設定する方法

今回は、S2JDBCからMySQLに接続する際に、コネクションタイムアウトを設定する方法を紹介する。方法としては、「jdbc.dicon」のタグの値の末尾に「?connectTimeout=タイムアウトの待ち時間>」を追加することである。タイムアウトの待ち時間の単位は、MySQLの…

JavaでPDFファイルを出力する(iTextライブラリ)【表配置編】

今回は、「iText」を使用して、表をPDFに配置する方法を紹介する。ポイントは、表に対応するクラスである「PdfPTable」と、表内のセル(表の要素)に対応するクラスである「PdfPCell」の使用である。手順としては、「PdfPCell」のコンストラクタで、表内に表示…

JavaでPDFファイルを出力する(iTextライブラリ)【図形配置編2】

今回は、「iText」を使用して、図形(楕円と直線)をPDFに配置する方法を紹介する。ポイントは、前回の四角形描画と同じく、「PdfGraphics2D」クラスを利用することである。「PdfGraphics2D」クラスの、楕円を描画するメソッドには、下記の様なものが用意され…

JavaでPDFファイルを出力する(iTextライブラリ)【図形配置編】

今回は、「iText」を使用して、図形(四角形)をPDFに配置する方法を紹介する。ポイントは、「PdfGraphics2D」クラスを使用して、四角形を描画するメソッドを呼び出し、最後に「dispose」メソッドを呼び出すことである。「PdfGraphics2D」クラスの、四角形を描…

JavaでPDFファイルを出力する(iTextライブラリ)【画像配置編】

今回は、「iText」を使用して、画像付のPDFを作成する方法を紹介する。準備として、「C:\temp」フォルダ内に、PDFに挿入する「img.jpg」ファイルを格納しておく。 Imageインスタンスの作成 Imageインスタンスに対して表示座標の設定 Imageインスタンスに対し…

JavaでPDFファイルを出力する(iTextライブラリ)【テキスト自由配置編】

前回は「iText」を使用して、文字列が1つだけ表示されるPDFを作成した。 ただ、文字が表示される位置は、PDFの左上に固定されていた。 今回は、文字列を自由な位置に配置する方法を紹介する。ポイントは、「PdfWriter」より「PdfContentByte」を取得し、「Pd…

JavaでPDFファイルを出力する(iTextライブラリ)【出力編】

前回は「iTextライブラリ」を使用するための準備を行った。 今回は「iTextライブラリ」を利用して、実際にPDFファイルを出力する手順を紹介する。作成するPDFは、文字列を1つだけ表示する、極めてシンプルなものとする。ソースコード package jp.co.smp.pdf.…