投稿

はじめてのiPhone3プログラミング

日本語訳が悪い

iPhoneアプリのディレクトリ構成

NSString *path = [[NSBundle mainBundle] pathForResource:@"aaa" ofType:@"bbb"]; でccc.app直下。XcodeではResoucesにあたる。 NSArray *paths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory,NSUserDomainMask,YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSString *path = [documentsDirectory stringByAppendingPathComponent:@"aaa.bbb"]; でccc.appと同等のレベルのDocumentsの下のaaa.bbb Documentsの下の方はシミュレータでも実機でも読み書き可。 ccc.app直下の方はシミュレータで読み書き可、実機では読み込みのみ可。 間違いがあるかもしれない。

MAXの教科書

とりあえずchapter4まで読んだところでおなかいっぱい。 MAXを使ってなにかを作ろうとは思わない。 それよりもMAX自体に興味がある。 MIDIが出来てから、それを使うソフトがいろいろ出たなかで、CubaseやLogicのような発展をするのが普通だと思うがMAXはそれ自体がアイデンティテイを持ってしまって独自の発展をしたように感じる。 作品は模倣が基本なのにMAXの場合は模倣に意味があまりないように感じる。

EXC_BAD_ACCESS

EXC_BAD_ACCESSというエラーが出て原因がわからなかった。 コンパイルは通るが実行時にエラーが出る。 ネットでいろいろ調べて、アクティブな実行可能ファイルを設定というものに変数を設定してみた。しかし、まだ出る。いろいろやっていて、その変数のなかの一つを外してみたら、エラーがでなくなった。結果的には良いが、原因わからず。

基礎UML

ラダーアプリの大きさがどんどん大きくなり、全体が把握出来なくなり、クラス設計図を書く必要が出てきた。そこで、UMLを勉強しようと思い、基礎UMLという本を読み、自分でも書いてみる。で、それを見ながら、アプリを動かすときにどういう処理をするか考える。 基準は「実装の量が少なくなるか」よりも「あとから見てわかりやすいか」を重視。だいたいまとまったので実装を始める。

インターフェイスビルダーのカラーパレット

インターフェイスビルダーのカラーパレットと、インスペクタのカラー部分との関係 インスペクタのカラー部分をクリックするとカラーパレットとが出てくるが、カラーパレットの操作がインスペクタの方に反映されるときと、されないときがある。つまり両者の間にコネクト状態と非コネクト状態と両方の状態があるので注意。それは外枠の濃さで判断出来る。濃いときはコネクト状態、白い時は非コネクト状態。コネクト状態の時にカラーパレットから色を選択してやると色指定が出来る。

供給された iPhone OS デバイスが接続されていません

10800円で開発者の会に入会する時に一度トラブルがあるらしい。 メールで問い合せると対応してくれる。 10800円を払ったので、iPodでテスト出来る手続きをしてみたる。 参考にしたのは http://gihyo.jp/dev/serial/01/iphone/0009?page=1 感想 ややこしい。人に説明しろといわれても出来ない。 App IDというのがよくわからないが、とりあえず自分の名前にしておいた。 最後にiPodにアプリを転送するところでエラーが出た。 「供給された iPhone OS デバイスが接続されていません」 原因不明で、いろいろ調べてみたが、iPodの電源を入れ直すという方法でも解決しない。 XCodeとiPodのバージョンが違うのかなと思い、Xcodeを最新のにアップしようとしたら、ダウンロードページに黄色い注意マーク付きで以下の記述 If you have updated your device to iPhone OS 3.1.3 with iTunes, you must install iPhone SDK 3.1.3 in order to continue with your development. 自分の環境を調べるとiPodのバージョンは3.1.3で、XCodeのほうは3.1.2だったので、原因はこれだろうと思い、ダウンロードする。 ダウンロード後、実機テストが出来たが、Codesign error: no certificate was found in your keychain for the specified identidier "(null)"というエラーが出ている。原因わからず。