Hatena::ブログ(Diary)

このブログは証明できない。

2011-03-04

[][]Titanium Mobileの暗黒ノウハウを公開します。

WEB+DB PRESS Vol.61の特集は、Titaniumでした。実際にアプリを作りながらのチュートリアルになっています。正統派な入門記事です。





でも。期待してた内容ではありませんでした。私は、Titaniumの暗黒面が知りたいのです。いつものWEB+DB PRESSなら、そんな記事が多いのですが、さすがにまだ開発者が少なそうなTitaniumではアッサリ目に仕上げるしかないのでしょう。そこで、このどうでもいいブログで、Titaniumバッドノウハウ、いや、暗黒ノウハウをメモっておきます。


アプリを1本開発しただけですので、そこまでTitaniumのことを解っているわけではありません。間違っているところなどがありましたら、指摘してもらえるとありがたいです。暗黒ノウハウをみんなで共有しましょう。あと、スシなどをおごってもらえると、もっとありがたいです。




前提。

Titaniumのバージョンは、主に1.5.1です。途中で1.6.0がリリースされたので、状況は変わっているかもしれません。目の前の状況は、刻一刻と変わるものです。現状に甘んじてはいけません。あと、私が作ったのはiPadアプリです。Androidは試してません。




読み方。

Titaniumの読み方ですが、「チタニウム」ではなくて、「タイタニウム」だそうです。オシャレに「タイタニューム」と読んでもいいかもしれませんね。私は「藤岡弘、」と読んでます。




ビルドできない。

最初に試した頃にTARGET_BUILD_DIRのエラーが出ていました。今は大人になったので、出ていません。もし出たら、プロジェクトの設定をいじると直ります。


最近はまったく再現しないので、私も大人になったんだと思います。




シミュレーターが起動しない。

エラーが発生したり反応がなくなったりしてシミュレーターが起動しない場合は、再度「Launch」ボタンをクリックしてください。「Launch」が有効で「Stop」が無効になっている場合は、いくら待ってもシミュレーターが起動しないケースが多いです。また、いったん「Stop」して「Launch」しなければならない場合もあります。


私に話しかけても反応が無いときがありますが、再度話しかけると反応します。




アプリアイコン

Titanium Developerでアプリアイコンのファイル名を変更できます。このとき、存在するファイル名を書く必要があります。むしろ、設定を変えずに、Project/Resources/iphone/appicon.pngファイルを上書きするといいですね。


現在のTitaniumだと、アイコンやDefault.pngがうまく適用されなくて、イライラする日々を過ごすこともあるかもしれません。そんなときは、このサイトを見てください。




Application IDに使えない文字。

net.shunsuk.MyAppのようなApplication IDには、ハイフンが使えません。ドメイン名にハイフンを使っている人は、残念でした。Objective-Cで作る場合はハイフンもOKなのですが、Androidのパッケージ名で使えないっぽいです。


あと、試してないですが、Application IDには絵文字も使えないかもしれません。




使ってはいけないフォルダ名。

公式ドキュメントに載っているのかどうか分かりませんが、使ってはいけないフォルダ名があります。プロジェクトを作ると生成されるResourcesフォルダの下に、contentsフォルダとかresourcesフォルダとかを作ってはいけません。知らんかったら、トラップ以外の何者でもありません。


システムフォルダの中にエロ画像フォルダを作るのも、相手によっては逆効果だと思います。




なぜかエラーが起こる。

何の問題もないはずなのに、エラーが起こる場合があります。信じられないかもしれません。私も信じられません。でも本当です。しかも、エラー内容が表示されずに、スタックトレースが表示されます。どうしようもありません。試されてます。この場合は、Project/build/iphoneフォルダ以下をのファイルをすべて削除して、再度実行するとOKです。ちなみに、iphoneフォルダを消すと、デバッグできなくなりますので注意してください。


Titaniumオープンソースなので、なぜエラーが起こるのか解析して、パッチを送ってあげるといいですね。私もオープンなのですが、心を開いていないと言われることが多いです。




tiapp.xmlを直接編集。

基本的なことは、Titanium Developerで設定できます。もっと細かい設定をしたければ、プロジェクトのフォルダのtiapp.xmlを編集する必要があります。このへんの設定は、よく使うんじゃないでしょうか。

  • statusbar-style
  • statusbar-hidden
  • orientations

tiappって、なんて読むんでしょうね。血アップ。




TitaniumはTiと省略可能。

APIの話です。Titaniumは、Tiと省略することができます。なので、下のどちらでもOKです。

Titanium.UI.createView();
Ti.UI.createView();

原子番号22。チタン元素の一つで、金属光沢を持つ遷移元素です。




実機転送。

作ったアプリを実機に転送する場合、Titanium Developerから転送しようとすると下のような手順になります。


面倒なので、生成されたプロジェクトをXCodeで直接開いて実行する方が速いです。Project/build/iPhoneフォルダにプロジェクトファイルがあります。ただ、そのままでは動かない場合があるので、プロジェクトの設定を適宜変更してください。また、XCodeから実行することで、パフォーマンスツールを利用することもできます。


ビルドにはとても時間がかかります。不要なライブラリを削除すればいい気もしますが、そのへんは調べてません。不要なものを削除していって、結局自分も不要なんじゃないか、という疑問に達した人は、そんなことないよ!!




AdHocビルド

AdHocビルドするには、上で書いたように、プロジェクトファイルをXCodeで開いてビルドすると簡単です。プロジェクトにdist.plistなどを追加して、プロジェクトの設定をいじってください。


今日の弁当には、アドホックに玉子焼きがついてました。




includeの順番。

Objective-Cの#importと根本的に違います。LLのrequireのように、コードが展開されます。この時、includeの順番に注意しましょう。

Ti.include('A.js');
Ti.include('B.js');

こう書くと、AからBは見えますが、BからAは見えません

追記(2011-03-21):書き間違えてました。BからAは見えますが、AからBは見えません。


includeに関しては、こちらも参考に。


今日の弁当のハンバーグには、チーズがインクルードされていました。




フォントサイズ。

UI部品のフォントサイズを動的に変えたいとき。

textView.font.fontSize = 36;

では変りません。font自体を設定します。

textView.font = { fontFamily:'Helvetica Neue', fontSize:36 };

フォントにつらくなってきました。




Objectの生成。

ObjectやArrayを生成するとき。

ver o = new Object()
ver a = new Array()

こう書くと、警告が出ます。リテラルを使いましょう。

ver o = {};
ver a = [];

これって、JavaScript的な意味があるのでしょうか。そもそも、生きる意味などあるのでしょうか。




子Viewのサイズ。

子Viewのサイズを指定していなければ、親Viewの中で最大表示されます。この状態で親Viewのサイズを変えると、連動して子Viewのサイズが変わります。ここで、子Viewのサイズをピクセルで指定していると、連動しなくなるので注意してください。


Titaniumでは、サイズをパーセント指定できます。うまくやれば、マルチプラットフォームに仕上げられますね。でも、なかなか難しいと思うんです。ロジックだけを共有して、UIは切り分けた方がいいと思います。


私の子も、親の私に連動して、背が低いです。




jQuery

JavaScriptライブラリを使えるというのもTitaniumの特徴です。ですが、jQueryはそのままでは動きません。wondowやdocumentなどのオブジェクトがないためです。無理やりjQueryを使うには、こちらの記事を参考にしてください。


ただ、DOMがないので、jQueryを使うメリットがあるのかは微妙です。ちなみに、JQはジェットスター航空の航空会社コードです。紹介したので、サービスしてください。




アニメーション

Titaniumは、アニメーションがやりやすいです。MogSnapというアプリTitanium製らしいですが、アニメーションが楽しいアプリになっています。


アニメーションをガンガン使いたいのですが、いろんなタイミングに注意しましょう。例えば、下のコードではmessageWinがcloseするのは500ms後ですので、それまでにmessageWinが閉じられていることを前提としたコードが走るとマズイですね。まあ、これは分かりやすいケースですが。

messageWin.close({opacity:0, duration: 500});

私もMogSnapを使っていますが、コンビニおにぎりかマクドナルドカップ麺なので、使う機会がありません。ちょっと不健康な食生活ですね。健康のため、カップ麺ドラッグストアで買ってます。




画像のロードとリロード。

ImageViewは、createImageViewでimageを設定しても、そのタイミングでは画像をロードしません。親Viewにaddしたりして表示されるタイミングで画像をロードします。これは、iOSのUIImageViewと挙動が違うので注意が必要です。


また、ImageViewがremoveされても、すぐに画像がリリースされません。キャッシュしてるっぽいですが、詳しくは調べていません。そのImageViewを使う予定がなければ、サイズの小さい画像をimageにセットすることでメモリを節約しています。ホントはやり方があるかもしれませんが。


メモリ管理の必要がないところが、メリットでもあり、デメリットでもありますね。記憶を管理して、黒歴史を消し去りたいですね。マインドアサシン




ScrollViewの謎挙動。

ScrollViewにImageViewを乗せて画像をズームします。ズームした状態で、関係ないWindowを開きます。そして、Windowを閉じます。すると、ScrollView上のImageViewの位置がおかしくなるという謎挙動に遭遇しました。今のところ、原因不明です。


私もよく、原因不明の物欲に駆られて、原因不明のアマゾンで、原因不明の買い物をします。




クロージャ

クロージャを使わないと、思ったように動作しないケースがあります。ファイルを分割して、コンテキストが別になった場合などで必要になるんでしょうか。知らんけど。クロージャに慣れていない人は、復習しておいたほうがいいかもしれません。

var label = Ti.UI.createLabel();

view.layout = (function() {

var l = label;

return function(message) {

l.text = message;

};

})();


そんなに、くろーじゃないよ。って言いたかっただけです。




ちょっと。

コードスニペットを。イマイチなのも公開しときます。


デバッグするときにTi.API.info("デバッグ!")と書くのが面倒なので、utility.js的なファイルに下のコードを書いてapp.jsの先頭でincludeしておきます。

var info = Ti.API.info;

そうすると、こう書けます。

info("デバッグ!");

完璧グローバルですが、この場合はいいんじゃないかと思います。




clickイベントをハンドルする場合、こう書きます。

button.addEventListener('click', function(e) {
  info("clicked");
});

これも、utility.jsにこう書いておくと。

Object.prototype.click = function(handler) {
  var sender = this;

  this.addEventListener('click', function(e) {
      handler(sender, e);
    });
};

こう書けるようになります。

button.click(function(sender, e) {
  info("clicked");
});

完全に好みの問題なので、なにか便利になるわけではありません。Object.prototyeを汚染してますし、senderなんてなくてもe.sourceでOKですし、いろいろ腑に落ちないところはあります。でも、button.clickって書きたいんです。おすすめじゃないですが、いちおう書いておきました。




最後に、これもutility.jsに書いておきます。

var getImageFile = function(name) {
  return Ti.Filesystem.getFile(Ti.Filesystem.resourcesDirectory, 'images/' + name);
};

そうすると、imagesフォルダに入ってる画像を短いコードで呼び出せます。

imageView.image = getImageFile('profile.png');



フレームワーク

JavaScriptAIRアプリを作った時も思ったのですが、画面遷移まわりなど、薄いフレームワークを作ったほうがよさそうです。ガチガチのフレームワークは必要ないのですが、JavaScriptは柔軟性が高い分、統制がとれなくなる可能性が高いので。


まあ、柔軟性が低い上に統制もとれてない私に比べれば、たいした問題ではありません。




役に立つかどうかわかりませんが、いろいろ書いてみました。「間違っているところがあるかもしれません」と書いて逃げるのは好きではないのですが、間違っているところがあるかもしれませんのでご注意ください。


たくさん書いたので、スシが食べたいです。




tkntkfmtkntkfm 2011/03/07 22:40 とても参考になりました!ありがとうございます。僕も健康のために明日からカップラーメンはドラッグストアで買うことにします。

clubjulyclubjuly 2011/05/10 15:49 すばらしい!本文もよいですが、行間のボソリはもっとよいです。

icchaiccha 2011/08/02 18:37 コーディングの工夫がされていて、参考になりました。時々出るオヤジギャグっぽいところが リラックスした雰囲気を出してくれて勉強しやすくうれしいです。

8x rainbow8x rainbow 2015/03/17 23:08 コーディングの工夫がされていて、参考になりました。時々出るオヤジギャグっぽいところが リラックスした雰囲気を出してくれて勉強しやすくうれしいです

8x rainbow8x rainbow 2015/03/17 23:09 コーディングの工夫がされていて、参考になりました。時々出るオヤジギャグっぽいところが リラックスした雰囲気を出してくれて勉強しやすくうれしいです

dketdket 2015/04/05 01:13 僕も健康のために明日からカップラーメンはドラッグストアで買うことにします

floritaflorita 2015/04/15 17:14 これはアプリであるか、研究開発に必要

sukosuko 2015/06/29 08:05 僕も健康のために明日からカップラーメンはドラッグストアで買うことにします。

floteflote 2015/06/30 07:18 参考になりました。時々出るオヤジギャグっぽいところが リラックスした雰囲気を出してくれて勉強しやすくうれしいです

everrich 3everrich 3 2015/07/27 23:29 この真理を学んだことは非常に幸運な関心事であります

can ho 9 viewcan ho 9 view 2015/12/21 01:04 のために明日からカップラーメンはドラッグストアで買うことにします

quan vipquan vip 2016/01/01 03:27 私もよく、原因不明の物欲に駆られて、原因不明のアマゾンで、原因不明の買い物をします。

centaparkcentapark 2016/01/01 03:28 私もよく、原因不明の物欲に駆られて、原因不明のアマゾンで、原因不明の買い物をします。

VivariversidesVivariversides 2016/01/12 02:45 情報をありがとう。私は良いを感じています!

thekristathekrista 2016/01/13 22:22 IOS上でこのようなものを使用する方法?

visvis 2016/01/31 00:46 あなたの記事に便利です

vinhomes golden rivervinhomes golden river 2016/03/12 06:31 そんなに、くろーじゃないよ。って言いたかっただけです。

Can ho centa parkCan ho centa park 2016/03/26 15:58 情報を共有していただきありがとうございます

du an centa parkdu an centa park 2016/04/27 11:13 これは、1株面白いです!

nha dat quan tan binh 2nha dat quan tan binh 2 2016/04/29 17:15
共有していただきありがとうございます、それは彼女に多くの作業を助けました

can ho centa park tan binhcan ho centa park tan binh 2016/04/29 17:17 私はこのことについて聞いたことがない、素晴らしいです

yaibayaiba 2016/04/29 17:24 あなたがこのことを知っていない前に、共有のためにどうもありがとうございました

KyoshuKyoshu 2016/04/29 17:32 より多くのあなたの助けを楽しみにして、あなたに感謝

KennichiKennichi 2016/04/29 17:51 theo như mình đánh giá thì đây là phiên bản đáng giá nhất từ trước đến nay

ShogaShoga 2016/04/29 17:55
彼の評価によると、これはこれまでで最も価値のあるバージョンです

AkechiAkechi 2016/04/29 18:02 それを使用するか、わずかな誤差を受けるかどうか?

YosuaYosua 2016/04/30 01:01 あなたのシェアはそんなに私を恩恵を受けている、あなたに感謝

DaichikiDaichiki 2016/04/30 01:06 私は非常にこれを理解していない、あなたはそれの上に自分自身を教えてくださいすることができますか?

CieloCielo 2016/04/30 10:13 素晴らしい、これは私が知って初めてです、この撤退

MrKingMrKing 2016/04/30 10:15 あなたはそうではない問題を議論することができますするためにあなたの電話番号を与えることができますか?

vinhomes golden rivervinhomes golden river 2016/05/08 16:38 thank so much

can ho vinhomes golden rivercan ho vinhomes golden river 2016/05/08 16:41 website useful for me, thank so much

tri nam datri nam da 2016/05/14 16:37 website useful for me, thank so much, nice

phun moiphun moi 2016/05/16 10:35 tks, ilike it

phun moiphun moi 2016/05/16 10:36 あなたはそうではない問題を議論することができますするためにあなたの電話番号を与えることができますか?

imperia sky gardenimperia sky garden 2016/05/17 16:08 あなたのシェアはそんなに私を恩恵を受けている、あなたに感謝

vinhomes golden rivervinhomes golden river 2016/05/29 00:49 そんなに、くろーじゃないよ。って言いたかっただけです。

dau nong han quoc gia sidau nong han quoc gia si 2016/05/29 00:59 website useful for me, thank so much, nice

Chuong Duong HomeChuong Duong Home 2016/05/31 03:25 thanks for share!!

Depot Metro Tham LuongDepot Metro Tham Luong 2016/06/06 15:27 Yeah, I learn alot from your share, I would like to make friends with you! Hope you see my comment. Have a nice day

masteri quận 4masteri quận 4 2016/07/12 12:49 あなたはそうではない問題を議論することができますするためにあなたの電話番号を与えることができますか?

meocon84meocon84 2016/07/19 17:51 thanks so much!!! i'll come back

Senturia vuon laiSenturia vuon lai 2016/07/22 12:24 wow nice information men keep it up

xi grand courtxi grand court 2016/07/25 13:01 私にとって非常に有用

Richmond CityRichmond City 2016/07/25 22:34 Yeah, I learn alot from your share, I would like to make friends with you! Hope you see my comment. Have a nice day

vinhomes golden rivervinhomes golden river 2016/07/29 10:36 can ho vinhomes golden river
http://chungcuct2bnghiado.com/

can ho millenniumcan ho millennium 2016/07/31 17:57 僕も健康のために明日からカップラーメンはドラッグストアで買うことにします

to yen sao viet namto yen sao viet nam 2016/08/04 12:27 にあなたの電話番号を与えることができますか?

shophouse van phucshophouse van phuc 2016/08/12 00:57 Yeah, I learn alot from your share, I would like to make friends with you! Hope you see my comment. Have a nice day

can ho heaven riverviewcan ho heaven riverview 2016/08/16 02:05 wow nice information men keep it up

saigon peninsulasaigon peninsula 2016/08/16 02:06 Nice Blog, thanks so much

can ho masteri an phucan ho masteri an phu 2016/08/16 02:09 website useful for me, thank so much, nice

do choi thong minhdo choi thong minh 2016/08/16 15:48 Nice Blog, thanks so much

chanhanchanhan 2016/08/16 17:55 http://news1102.com/

chanhanchanhan 2016/08/16 17:55 http://news1102.com/

newvisionnewvision 2016/08/18 12:26 Thank you for share

sofasofa 2016/08/19 18:51 thanks information you

Masteri An PhúMasteri An Phú 2016/08/22 18:50 This helpful with me! Thanks so muchs!

lien ke phu luonglien ke phu luong 2016/08/23 01:16 Thanks for sharing. The infomation is useful

masteri an phumasteri an phu 2016/08/23 01:40 Give me some news , tks

can ho gia re quan 8can ho gia re quan 8 2016/08/23 01:42 wow nice information men keep it up

căn hộ city gate 2căn hộ city gate 2 2016/08/29 11:56 Thank you for share ...

palm heightspalm heights 2016/08/31 00:17 これはアプリであるか、研究開発に必要

d-velad-vela 2016/08/31 00:18 website useful for me, thank so much, nice

biet thu lavilabiet thu lavila 2016/09/02 05:07 コーディングの工夫がされていて、参考になりました。時々出るオヤジギャグっぽいところが リラックスした雰囲気を出してくれて勉強しやすくうれしいで

Senturia Vuon LaiSenturia Vuon Lai 2016/09/09 16:32 または、簡潔かつ簡潔な記事

sofa da cao capsofa da cao cap 2016/09/09 18:28 Thanks!

chung cu mon centralchung cu mon central 2016/09/10 01:26 Yeah, I learn alot from your share, I would like to make friends with you! Hope you see my comment. Have a nice day

chung cu sunshine centerchung cu sunshine center 2016/09/10 01:55 wow nice information men keep it up

chung cu an binh citychung cu an binh city 2016/09/10 02:01 Appreciate this post. Will give it a try.

chung cu central fieldchung cu central field 2016/09/10 02:03 それを使用するか、わずかな誤差を受けるかどうか?

duc long golden landduc long golden land 2016/09/10 14:12 Thank you for share ....

tienphat2906tienphat2906 2016/09/10 18:50 Thank you for share

chung cu dolphin plazachung cu dolphin plaza 2016/10/20 10:53 thank you so much

chung cu riverside gardenchung cu riverside garden 2016/10/20 10:55 Mo ban chung cu riverside garden 349 vu tong phan

an binh cityan binh city 2016/10/20 10:56 thông tin chung cu an binh city 232 pham van dong

mo tai khoan forexmo tai khoan forex 2016/10/20 10:58 mo tai khoan forex demo uy tin tai viet nam

can ho elite park binh thanhcan ho elite park binh thanh 2016/10/24 19:46 thanks for your infomation

Feliz En Vista Feliz En Vista 2016/11/25 03:02 Thank you for share

Flamingo ResortFlamingo Resort 2016/12/22 10:41 Good tks you verry muck

Website : https://goo.gl/FF8qdk
Blogger : https://goo.gl/BrVjOl
Site Google : https://goo.gl/cpML9K
Wordpress : https://goo.gl/57DFiC

can ho quan 8can ho quan 8 2016/12/27 13:44 CĂN HỘ QUẬN 8 – HCM CĂN HỘ GIÁ RẺ, Chung Cư CĂN HỘ CAO CẤP, dự án căn hộ mới đa dạng diện tích căn hộ » Giá từ 1 tỷ ✓ Hỗ trợ vay ưu đãi.

vincityvincity 2017/01/01 13:38
共有していただきありがとうございます、それは彼女に多くの作業を助けました

can ho luxgardencan ho luxgarden 2017/01/01 13:39 wow nice information men keep it up

mua ban nha onlinemua ban nha online 2017/01/01 13:41 あなたがこのことを知っていない前に、共有のためにどうもありがとうございました

bietthubietthu 2017/03/03 16:26 私は非常にこれを理解していない、あなたはそれの上に自分自身を教えてくださいすることができますか?

Tura Khang DienTura Khang Dien 2017/03/21 17:53 Oh!! Let't see my wall anh you will know everything perfect!

Tura Khang DienTura Khang Dien 2017/03/21 17:56 哦!! 让我看到我的墙上,你会知道一切完美!

ciao residencesciao residences 2017/04/26 23:50 相手によっては逆効果だと思います。

bella vidabella vida 2017/04/30 13:36 thansk for share

4dsmedia@gmail.com4dsmedia@gmail.com 2017/04/30 13:38 でOKですし、いろいろ腑に落ちないとこ

プーアパートプーアパート 2017/05/13 12:09 2区でプーアパート

longlong 2017/05/29 01:04 Thanks for sharing this

at hereat here 2017/06/01 14:26 thank you very much!

The EdgeThe Edge 2017/06/10 22:58 僕も健康のために明日からカップラーメンはドラッグストアで買うことにします

Aurora RiversideAurora Riverside 2017/06/10 23:03 thanks for your infomation. Like

Tara ResidenceTara Residence 2017/06/10 23:04 Best for you, helpul infomation

saigon panoramasaigon panorama 2017/06/10 23:06 Yeah, I learn alot from your share, I would like to make friends with you! Hope you see my comment. Have a nice day!

kenton nodekenton node 2017/06/10 23:07 Love you, Thanks for sharing this

ascent lakesideascent lakeside 2017/06/10 23:08 Thank for everthing your sharing

The Garden BayThe Garden Bay 2017/06/10 23:14 I would like to make friends with you! Hope you see my comment. Have a nice day

water baywater bay 2017/06/10 23:15 この真理を学んだことは非常に幸運な関心事であります

d1 mentiond1 mention 2017/06/10 23:18 i love it, thank you very much

saigon gatewaysaigon gateway 2017/06/10 23:19 Thank you! Have a nice day

Dich vu chuyen nha todayDich vu chuyen nha today 2017/06/12 03:18 Love you, Thanks for sharing this

balo re dep tphcmbalo re dep tphcm 2017/06/26 16:51 Thanks for sharing

tararesidencetararesidence 2017/07/04 17:03 Greate Article, Thanks your for your sharing!

Kenton NodeKenton Node 2017/07/17 13:55 Greate Article, Thanks your for your sharing!

Kenton NodeKenton Node 2017/07/17 16:56 website useful for me, thank so much, nice

Kenton NodeKenton Node 2017/07/17 16:57 thanks for sharing this

acentanaacentana 2017/08/06 17:48 Du an căn hộ thủ thiêm dragon quận 2

acentanaacentana 2017/08/06 17:56 Căn hộ Centana Thủ Thiêm quận 2

quang15ltquang15lt 2017/08/12 23:17 <a href="http://chungcugreenpearl.net"> Chung cư Green Pearl </a> tọa lạc tại <a href="http://chungcugreenpearl.net"> 378 Minh Khai </a> với không gian sống trong lành, môi trường sống thân thiện. <a href="http://chungcugreenpearl.net"> Dự án Green Pearl </a> sẽ là tâm điểm chung cư của khu vực quận Hai Bà Trưng

riovistariovista 2017/09/27 23:21 thông tin bổ ích

uhuwnuhuwn 2017/09/27 23:30 rất đáng quan tâm

quang15lt@gmail.comquang15lt@gmail.com 2017/10/02 12:17 Dự án đẹp quá

khangtoanbdskhangtoanbds 2017/10/04 08:36 rio vista

th&#7911; thi&#234;m dragonthủ thiêm dragon 2017/10/15 16:13 căn hộ quận 2 ven sông

quang15ltquang15lt 2017/10/21 19:11 Đẹp quá

xe toyota innova 2018xe toyota innova 2018 2017/10/25 19:07 Xe moi rat dep

chung cu green pearlchung cu green pearl 2017/10/27 10:39 Đẹp quá.

th&#7911; thi&#234;m dragonthủ thiêm dragon 2017/11/04 12:56 good project

riovistariovista 2017/11/04 13:05 good choice

oneverandahoneverandah 2017/11/04 14:21 good choice

villa parkvilla park 2017/11/15 07:50 biệt thự quận 9

villa parkvilla park 2017/11/15 07:51 biệt thự quận 9

villa parkvilla park 2017/11/15 07:51 biệt thự quận 9

villa parkvilla park 2017/11/15 07:51 biệt thự quận 9

villa parkvilla park 2017/11/15 07:51 biệt thự quận 9

rio bonito rio bonito 2017/12/04 16:29 dự án mặt tiền Song Hành vành đai 3

Kim Long Kim Long 2017/12/12 23:41 Kim Long Nam Group

swan parkswan park 2017/12/17 13:06 dự án hot nhất nhơn trạch đồng nai

du an 378 minh khaidu an 378 minh khai 2018/01/20 13:11 du an 378 minh khai

swanpark cityswanpark city 2018/02/13 04:17 Một dự án rất view đẹp đông sài gòn

quanguyen@eravn.vnquanguyen@eravn.vn 2018/02/18 19:55 du an hot nhat vinh cam ranh

can ho akari citycan ho akari city 2018/02/28 15:02 Du an mới của tập đoàn hưng thịnh đồng nai

Areca Villa Long AnAreca Villa Long An 2018/04/15 04:34 very Good

huystevent2k1huystevent2k1 2018/04/26 17:54 #1 Dự án Imperia Sky Garden 423 Minh Khai Gần Times City,【KM HOT & Giá Chiết Khấu Trực Tiếp CĐT】
Hỗ trợ chọn tầng đẹp , căn đẹp * Hỗ Trợ Mua Nhà TRẢ GÓP Lãi Xuất 0% * Đã có Nhà Mẫu tham quan
Hotline: 0946 533 991
Website: <a href="http://duan-imperiaskygardens.com/">Duan-imperiaskygardens.com/</a>

Imperia Sky GardenImperia Sky Garden 2018/04/26 17:56 Dự án Imperia Sky Garden 423 Minh Khai Gần Times City,【KM HOT & Giá Chiết Khấu Trực Tiếp CĐT】
Hỗ trợ chọn tầng đẹp , căn đẹp * Hỗ Trợ Mua Nhà TRẢ GÓP Lãi Xuất 0% * Đã có Nhà Mẫu tham quan
Hotline: 0946 533 991

hoanghoang 2018/05/18 11:28 tks for info

can ho orchid parkcan ho orchid park 2018/05/23 16:56 du án ngay phú xuân nhà bè

dichvusuanha.orgdichvusuanha.org 2018/05/25 14:00 Thợ sơn nhà tphcm dichvusuanha.org

standastanda 2018/06/11 17:54 Công Ty Cổ Phần Ổn Áp Biến Áp Standa Việt Nam. Công ty sản xuất ổn áp standa | biến áp standa@

standastanda 2018/06/11 17:57 Công ty Cổ phần Ổn Áp Biến Áp Standa Việt Nam chuyên sản xuất và phân phối ổn áp Standa 10KVA | Standa 10KW | Standa 10000 chính hãng duy nhất tại Việt Nam. Các sản phẩm được cam kết 100% dây đồng, bảo hành 04 năm, giao hàng miễn phí
Với máy ổn áp, quý khách hàng có thể sử dụng kèm với 4-6 điều hòa, máy tính, tivi, tủ lạnh, máy giặt, lò vi sóng, máy bơm nước… Đảm bảo phù hợp với các hộ gia đình tại Việt Nam.…

On ap standaOn ap standa 2018/06/11 18:13 Ổn áp standa 20kva dây đồng 100% máy chạy êm đủ công xuất: chính hãng công ty cổ phần ổn áp biến áp standa việt nam. Ổn áp standa 20kva dây đồng 100% máy chạy êm đủ công xuất: chính hãng công ty cổ phần thương mại và sản xuất redsun. Sản phẩm phân phối: Ổn áp lioa 20kva mới 100% bảo hành 4 năm: chính hãng | Lioa 20kva dùng cho gia đình nhiều thiết bị điện hoặc cho văn phòng, công ty với giá cực tốt.

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証