TitaniumMobileでIPhoneアプリを開発しようとしたメモ

GWにTitaniumMobileでiPhoneアプリの開発に入門したので、断片的にメモ。

手っ取り早く、まとまった情報が欲しかったので、書籍を購入

TitaniumMobile iPhone/Androidアプリ開発入門

TitaniumMobile iPhone/Androidアプリ開発入門


Titanium Studio 2.0.1をインストール
http://www.appcelerator.com/


Mac OSなので、Titanium_Studio.dmg


インストールは、友人のブログにも載っているのでどうぞ。
http://devugger.com/2012/04/update-titanium-mobile-ade-to-2-0-1/


ちなみに、Android開発したい場合は、これ。

[Android SDK r18]
android-sdk_r18-macosx.zipをDL。
Android SDK
  Preferences > Aptana Studio > Titanium
  Android欄
      /Volumes/HDD/DeveloperHDD/android-sdk-macosx

事前に、android-sdk-macosx/tools/android
で、Androidマネージャーで必要なものを入れる。
Android 2.2が最低限必要。


[Xcode 4.3.2]
Xcodeも環境設定 > DownloadsでiOS5 Simulatorをインストールしておく。


お決まりのサンプル、Kichen Sinkをインポート。


左下のSampleタブ > Kichen Sink > Import sample as project…

動かしてみる
Run As > iPhone Simulator

エラーなる。
回避策
http://d.hatena.ne.jp/toshiyuki83/20120423


Titanium Studio Workspace/KitchenSink/build/iphone/Classes/ASI/ASIHTTPRequest.h
の下記IPHONE_5_0部分を追記

#ifndef __IPHONE_4_0
#define __IPHONE_4_0 40000
#endif
#ifndef __IPHONE_5_0
#define __IPHONE_5_0 50000
#endif

はい、これでTitaniumでiPhone開発環境整いました。


新規プロジェクト作成は、
File > New > Titanium Mobile Project
Project Name: MyProject
Location : Use default location
App Id: com.upsetter.myproject
URL: http://www.upsetter.com
Titanium SDK :2.0.1.GA2
Deployment Targets: iPhone
Cloud Setting: チェックはオフにしておく
Finish


プロジェクトフォルダ内の「.xcodeproj」ファイルをXcodeで開けば、
XCodeでビルド、シミュレーションできます。


以下、参考情報とTipsなど。


Titanium本家情報
http://docs.appcelerator.com/titanium/2.0/index.html

UI作る時はKichenSinkの他にこれも参照。
http://code.google.com/p/titanium-mobile-doc-ja/wiki/

================================
※戻るボタンがつくのは、currentTab.open()
================================

//※これだと戻るボタンが付かない
//var tabGroup = myapp.ui.createApplicationTabGroupChild();
//tabGroup.open();
//※戻るボタンがつくのは、currentTab.open()
var dir_path = "test";
var win = myapp.ui.listtable.createDirWindow(dir_path);
tab.open(win);

================================
UIの概念
================================

TagGroup -> open
↑(addTab)
Tab
↓
Window
↑
View(TableView,WebView), Controller(Labe,Button)
↑
View(TableView,WebView), Controller(Labe,Button)

================================
OAuth Library

1.oauth-adapter
http://code.google.com/p/oauth-adapter

2.titanium-mobileoauth
http://www.slideshare.net/k0sukey_/titanium-mobileoauth
https://github.com/k0sukey/TiPlatformConnect
Workspace/k0sukey-TiPlatformConnect-7ae4d43

================================
Titanium Mobileで作る!iPhone/Androidアプリ

技評連載
http://gihyo.jp/dev/serial/01/titanium

https://github.com/kurain/TitaniumTestApp
Workspace/kurain-TitaniumTestApp-3f154e7


================================
ソースが公開されているアプリ
http://ti.masuidrive.jp/topic.php?id=4

================================
できること
 Objective-CでPluginを書ける

できないこと
 OpenGLの直接利用
 細かなメモリ管理
 細かなチューニング