SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
Titanium Mobile
install | アプリ紹介
O.Shinnosuke
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
(アプリ、簡単なAPI紹介など)
5.push通知

時間:18:00~18:45
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
5.push通知
特徴
JSでTitanium APIを呼び出して実装
⇒ iPhone , Android 両方のアプリを作れる
※その他媒体にも対応
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
5.push通知
Alloy
TitaniumMobileの公式MVCフレームワーク
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
5.push通知
Hello, World
function doClick(e) {
alert($.label.text);
}
<Alloy>
<Window>
<Label id=”label” onClick=”doClick”>Hello, World</Label>
</Window>
</Alloy>
環境
・Mac PC
・XCode
・TitaniumMobile Studio
・Android SDK
Titanium Studioをインストール
http://www.appcelerator.com/titanium/
1.アカウント登録する
2.Titanium Studioダウンロード
Android SDK サイト
http://developer.android.com/sdk/index.
html?utm_source=weibolife
install
SDK Managerを起動して以下をインストール
・Android SDK Platform tools
・Android 4.3
画像を今回使うため、SDcardも作っておきます。
$ mksdcard 256MB パス/sd.img
➡AVDでSDカードのパスをセットしておく
ビルドパスの設定
Titanium Mobileの環境設定から、Android SDKのビルドパスを設定する
Debug/Runの項目で、AVDを作成
Alloyプロジェクト作成
New⇒
Mobile App Project⇒
Default Alloy Project
名前を決めて決定すれば、プロジェクトが自動生成される
実行
Hello, world
Alloyの中身
app
-assets
-controllers
-models
-styles
-views
-alloy.js
-config.json
-README

plugins
-ti.alloy
-hooks
-plugin.py
assets
端末ごとにわけて、画像ファイルを入れておく
controllers
実際にアプリを動かしていく処理をJSで書いて置いていく
● Alloyでは、index.jsが最初に呼ばれる
● viewsの同じ名前のxmlファイルをコントロール
models
今回は使っていない。
モデルをJSで書いて置いておく
styles
cssのような役割で、拡張子は’.tss’とする
● viewsと同じ名前のxmlファイルに装飾をかける
views
xmlファイルで作り置いておく
※ファイル名が同じものに対応する
controllers, styles, views
3者は、全て同じ名前で対応している
⇒Titanium Studioでjsファイルを作るとtssファイルとxmlファイルは自動生成さ
れる
tssファイルがxmlファイルに装飾を加え、jsファイルがそれをコントロールする
alloy.js
今回は使っていない。
index.jsよりも前に呼び出され、アプリケーション全体で使用する処理を記述
する
config.json
共通で定義したいものを記述
パスやURLなど
plugin.py
エミュレータ立ち上げの時にAlloyプロジェクトをコンパイル
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
5.push通知
アプリについて
MoniCBApp
1.初期画面
-画像選択(カメラ、ギャラリーから選択)
2.サイト
Android/iPhoneの区分け
function doOpen() {
if (OS_ANDROID) {
alert(‘Android端末です’);
} else if (OS_IOS) {
alert(‘iPhone端末です’);
} else if (別のOS) {
}
}
端末毎にif文で分岐してやる必要があります。
API
// カメラを起動する
Ti.Media.showCamera(options)
// ギャラリーから選択する
Ti.Media.openPhotoGallery(options)

例)options
● mediaTypes : String[]
● saveToPhotoGallery : Boolean
● cancel : Callback<FailureResponse>
● success : Callback<CameraMediaItemType>
● error : Callback<FailureResponse>
API実装例
function selectCamera(function(e) {
var options = {
mediaTypes:[Ti.Media.MEDIA_TYPE_PHOTO],
saveToPhotoGallery: true,
success: function(event) {
$.sample.image = event.media;
// 成功時は画像に写真データセット
},
cancel: function(cancel) {
// キャンセル時は何もしない
},
error: function(error) {
alert(‘エラー’);
}
};
});

例)参照
// カメラ起動
Ti.Media.showCamera(options);
// ギャラリー選択
Ti.Media.openPhotoGallery(options);
iPhone
・Todoアプリ
端末ごとに分岐していないver.
ショートカットキー
拡大・縮小: command + 1 or 2 or 3
HOME: command + shift + h
起動中アプリ: command + shift + h + h
アジェンダ
1.特徴
2.Alloy
3.Hello, Worldまで
4.簡単なアプリ説明
5.push通知
push通知
1.ACS(Appcelerator Cloud Services)
➡ios/android両方に対して、サーバからの通知を統一できる
➡BaaS backend as a service
呼び出して使う
require(‘ti.cloud’)

2.実際にpush通知を実装
ACS料金
ストレージ:5USD/20GB
プッシュ通知は台数設定
160USD/5001〜10000台
320USD/10001〜25000台
480USD/25001〜50000台
640USD/50001〜75000台
800USD/75001〜100000台
100000台以上:0.008USD/1台
メール:10USD/10万通
感想
・コンパイルにすごく時間がかかるので、あまりデバッグして開発するのには
向かない気がします。
・JSだけで書かず、MVCモデルのAlloyを使えば、規模が大きくなっても対応
できそう。

Más contenido relacionado

Similar a TitaniumMobile Alloyの紹介

仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについてtototti
 
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!Mori Shingo
 
Titanium よりよい開発のために
Titanium よりよい開発のためにTitanium よりよい開発のために
Titanium よりよい開発のためにToshiro Yagi
 
20130817 Titanium勉強会(午前)
20130817 Titanium勉強会(午前)20130817 Titanium勉強会(午前)
20130817 Titanium勉強会(午前)Toshiro Yagi
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介Mori Shingo
 
[社内向け]Titanium勉強会
[社内向け]Titanium勉強会[社内向け]Titanium勉強会
[社内向け]Titanium勉強会Rei Matsushita
 
classmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconclassmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconHiraku Komuro
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Atsushi Harada
 
Titanium meetuptokyo01
Titanium meetuptokyo01Titanium meetuptokyo01
Titanium meetuptokyo01Kazuaki Konno
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術vaccho
 
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携Tetsuji Hayashi
 
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~嶋 是一 (Yoshikazu SHIMA)
 
デバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてデバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてDevice WebAPI Consortium
 
StartupTokyo_20101126
StartupTokyo_20101126StartupTokyo_20101126
StartupTokyo_20101126Remotus
 
リーン・スタートアップと Ci について @ DevOps 懇親会 #1
リーン・スタートアップと Ci について @ DevOps 懇親会 #1リーン・スタートアップと Ci について @ DevOps 懇親会 #1
リーン・スタートアップと Ci について @ DevOps 懇親会 #1Tatsuya Yamamoto
 
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」Embarcadero Technologies
 

Similar a TitaniumMobile Alloyの紹介 (20)

仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
仙台 iOS開発者勉強会 2011/11/03 - TwitterAPIについて
 
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
大なごやJS vol.6 Titanium Mobile と Alloy の解説をするよ!
 
Titanium よりよい開発のために
Titanium よりよい開発のためにTitanium よりよい開発のために
Titanium よりよい開発のために
 
20130817 Titanium勉強会(午前)
20130817 Titanium勉強会(午前)20130817 Titanium勉強会(午前)
20130817 Titanium勉強会(午前)
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
 
[社内向け]Titanium勉強会
[社内向け]Titanium勉強会[社内向け]Titanium勉強会
[社内向け]Titanium勉強会
 
classmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconclassmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeacon
 
T itanium概要
T itanium概要T itanium概要
T itanium概要
 
titanium_outline20111227
titanium_outline20111227titanium_outline20111227
titanium_outline20111227
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
 
Titanium meetuptokyo01
Titanium meetuptokyo01Titanium meetuptokyo01
Titanium meetuptokyo01
 
Ti.trap
Ti.trapTi.trap
Ti.trap
 
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
 
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携
XPagesDay2012 3-A Titanium mobileによるモバイルアプリケーションとXPages連携
 
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~
基調講演「モバイル市場とこれからの動向」~日本Androidの会の歩みと絡めて~
 
デバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開についてデバイスWebAPI/Symphonyを軸としたIoTの展開について
デバイスWebAPI/Symphonyを軸としたIoTの展開について
 
StartupTokyo_20101126
StartupTokyo_20101126StartupTokyo_20101126
StartupTokyo_20101126
 
リーン・スタートアップと Ci について @ DevOps 懇親会 #1
リーン・スタートアップと Ci について @ DevOps 懇親会 #1リーン・スタートアップと Ci について @ DevOps 懇親会 #1
リーン・スタートアップと Ci について @ DevOps 懇親会 #1
 
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」
「iPod Touchによる工場内のモバイル化 - 鋼材品質証明と基幹システム連携」
 
SkyWay HandsOn
SkyWay HandsOnSkyWay HandsOn
SkyWay HandsOn
 

Último

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 

Último (12)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

TitaniumMobile Alloyの紹介