¥È¥Ã¥×   ¿·µ¬ °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS

Titanium Mobile ¤Î¥Ð¥Ã¥¯¥¢¥Ã¥×(No.8)


Android¿½ÀÁ»þ¥á¥â

  • Titanium Studio¾å¤«¤é¤â[Distribute - Android App Store] - [Keystore Location¤Çnew]¤Ë¤è¤Ã¤Æ¥­¡¼¥¹¥È¥¢¥Õ¥¡¥¤¥ë¤¬ºî¤ì¤ë¤¬¡¢¤³¤ì¤ÇPublish¤¹¤ë¤È¥Ó¥ë¥ÉÅÓÃæ¤ÇÆüÉÕ¥¨¥é¡¼¤È¤Ê¤ë(java.io.IOException: Parse Generalized time, invalid format)¡£¥³¥Þ¥ó¥É¥é¥¤¥ó¾å¤ÇÀ¸À®¤¹¤ë¤ÈOK¤Ç¤·¤¿¡£ È÷¹Í¡§¥­¡¼¥¹¥È¥¢¥Õ¥¡¥¤¥ë̾¤Ï¥×¥í¥¸¥§¥¯¥È̾.keystore¡¢Key Alias¤Ï¥×¥í¥¸¥§¥¯¥È̾¤È¤¹¤ì¤ÐOK È÷¹Í¡§Publisher̾¤Ïpapuu.jp¡¢Éô½ð̾¤Ïapps¤È¤·¤¿¡£
  • ¸Å¤¤UI¤ÎGoogle Play Developer Console¾å¤«¤éapk¥Õ¥¡¥¤¥ë¤ò¥¢¥Ã¥×¥í¡¼¥É¤¹¤ë¤È¤­³«»Ï»þ¤Ë¼ºÇÔ¤·¤Þ¤¹(¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¡Öapk¤ò¥µ¡¼¥Ð¡¼¤Ç½èÍý¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿¡×)¡£Google Play Developer Console¥µ¥¤¥È±¦¾å¤Î¡Ö¿·¤·¤¤¥Ç¥¶¥¤¥ó¤ò»î¤¹¡×¥Ü¥¿¥ó¤«¤é¿·¤·¤¤¥Ç¥¶¥¤¥ó¤ËÀÚ¤êÂؤ¨¤ë¤ÈOK

Android¥¢¥×¥ê¤Ïapk¥Õ¥¡¥¤¥ë¤òa¥¿¥°¤Îsrc¤Ç»ØÄꤹ¤ì¤Ð¸ø³«¤Ç¤­¤Þ¤¹¡£¤¦¤Þ¤¯¤¤¤«¤Ê¤¤¤È¤­¤Ï¼¡¤ÎMIME type¤òÀßÄꤷ¤Þ¤¹¡£
.htaccess

AddType application/vnd.android.package-archive apk

AndroidÈdz«È¯»þ¤ÎÃí°ÕÅÀ(iPhone¥¢¥×¥ê³«È¯¤ò´ð½à¤È¤·¤¿°ã¤¤¡£¼ç¤ËTitanium SDK¤Î¥Ð¡¼¥¸¥ç¥ó 2.1.2GA°Ê¹ß¤Ç»î¤·¤¿¾ðÊó¤Ç¤¹)

  1. ²èÁü¤òÆɤ߹þ¤à¤È¤­'/image/foo.png'¤Î¤è¤¦¤Ë¥¹¥é¥Ã¥·¥å¤«¤é»Ï¤á¤Ê¤¤¤ÈAndroid¤Ç¤Ï¥¨¥é¡¼¤È¤Ê¤ë¡£
  2. touchstart¥¤¥Ù¥ó¥È¤Ê¤É¤Ç¥¹¥¯¥ê¡¼¥óºÂɸ·Ï¤ÎglobalPoint¤ò»ÈÍѤ¹¤ë¤È¥¨¥é¡¼¤È¤Ê¤ë¡£ ... ¸µ¡¹DEPRECATED¤È¤Ê¤Ã¤Æ¤¤¤ë¤Î¤Ç¡¢iPhone¤Ç¤âx/y¤Ç¼èÆÀ¤·¡¢source¤Î¥ª¥Ö¥¸¥§¥¯¥È¤Ë±þ¤¸¤ÆglobalPoint¤òµá¤á¤¿Êý¤¬Îɤµ¤½¤¦¤Ç¤¹¡£
  3. ImageView¤ÇÇطʲèÁü¤Î¥ê¥Ô¡¼¥È¤ò»ØÄꤷ¤Æ¤â¡¢¥¤¥á¡¼¥¸ÏÈ°ìÇդ˳ÈÂçɽ¼¨¤µ¤ì¤ë¡£ ... WebView¤Ç¤ÏAndroid¤Ç¤â¥ê¥Ô¡¼¥È¤·¤Æ¤¤¤Þ¤·¤¿¡£¤·¤ç¤¦¤¬¤Ê¤¤¤Î¤ÇImageView¤ÇÇطʤòÉߤ­µÍ¤á¤ë¤È¤­¤ÏAndroid¤À¤±Â礭¤á¤ËÉߤ­µÍ¤á¤¿Ê̲èÁü¤òÍÑ°Õ¤·¤Þ¤¹¡£
  4. ImageView¤ÎÃæ¤ËImageView¤Ê¤É¤òÆþ¤ì»Ò¤Ë¤¹¤ë¤È¡¢Æþ¤ì»Ò¤Ë¤·¤¿¥³¥ó¥Ý¡¼¥Í¥ó¥È¤¬É½¼¨¤µ¤ì¤Ê¤¤¡£Android¤Ç¤âÆ°¤¯¤è¤¦¤Ë¤¹¤ë¤¿¤á¤Ë¤ÏView¤Ëadd¤·¤Ê¤¤¤È¤¤¤±¤Ê¤¤¡£
  5. ¤¢¤ë¥¦¥£¥ó¥É¥¦¤Çadd¤·¤Æ¤¤¤ëview¤ò¡¢¤½¤³¤«¤é³«¤¤¤¿Ê̤Υ¦¥£¥ó¥É¥¦¤Ë¤âadd¤·¤¿¤È¤­¤ÎÆ°ºî¤¬iOS¤ÈAndroid¤Ç°ã¤¦¡£iOS¤Ç¤ÏξÊý¤Î¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤µ¤ì¤ë¡£Android¤Ç¤Ï³«¤¤¤¿¥¦¥£¥ó¥É¥¦¤Çɽ¼¨¤µ¤ì¤º¡¢Ìá¤Ã¤¿¤È¤­¤Ë¸µ¤Î¥¦¥£¥ó¥É¥¦¤Ç¤â¾Ã¤¨¤Æ¤¤¤ë¡£ºÇ½é¤«¤éview¤Ï£±¤Ä¤Î¥¦¥£¥ó¥É¥¦¤Ë½ê°¤¹¤ë¤Î¤òÁ°Äó¤È¤¹¤ë¤Î¤¬Àß·×¾å¤âÎɤµ¤½¤¦¡£remove¤·¤Æ¤«¤éadd¤¹¤ë¤«¡¢view¤ò¥³¥Ô¡¼¤·¤Æadd¤¹¤ë¤«¤ÇÂбþ¤¹¤ë¡£
  6. iPhone: Label¤Ê¤É¤Çwidth, height¤ò»ØÄꤷ¤Ê¤¤¤È0¤È¤Ê¤ë¡£
    Android: Label¤Ê¤É¤Çwidth, height¤Ïʸ»úÎó¤Ë¹ç¤ï¤»¤ÆÀßÄꤷ¤Æ¤¯¤ì¤ë¡£
  7. iPhone: Label¤Ê¤É¤Ç¾å²¼°ÌÃÖ¤ò»ØÄꤷ¤Ê¤¤¤È¤­¾å´ó¤»¤È¤Ê¤ë¡£
    Android: Label¤Ê¤É¤Ç¾å²¼°ÌÃÖ¤ò»ØÄꤷ¤Ê¤¤¤È¤­¾å²¼Êý¸þ¤ÎÃæ±û´ó¤»¤È¤Ê¤ë¡£
  8. iPhone: TextArea¤Îheight¤òauto¤È¤·¤¿¤È¤­¡¢¹Ô¿ô¤¬ÊѤï¤Ã¤Æ¤â¹â¤µ¤ÏÊѤï¤é¤Ê¤¤¡£
    Android: TextArea¤Îheight¤òauto¤È¤·¤¿¤È¤­¡¢ÆþÎϤ·¤¿¹Ô¿ô¤Ë¤è¤Ã¤Æ¹â¤µ¤¬ÊѤï¤ë¡£
    ´ØÏ¢url

Titanium Mobile¼«¿È¤ÎÃí°ÕÅÀ¼ç¤Ë(Titanium SDK¤Î¥Ð¡¼¥¸¥ç¥ó 2.1.2GA°Ê¹ß¤Ç»î¤·¤¿¾ðÊó¤Ç¤¹)

for (x in ÇÛÎó̾)¤Ç¤Î¥Ï¥Þ¥ê¤ËÃí°Õ

Î㤨¤Ðview¤¬Ê£¿ôÆþ¤Ã¤¿ÇÛÎó¤ËÂФ·¤Æ¸Ä¡¹¤Îview¤ò½èÍý¤¹¤ë¤È¤­¡¢¡Öfor (x in ÇÛÎó̾) ¥ë¡¼¥×¡×¤ò»È¤¦¤È¼¡¤Î·Ù¹ð¤¬½Ð¤ÆÀµ¾ï¤ËÆ°ºî¤·¤Þ¤»¤ó¤Ç¤·¤¿¡£

[WARN] Exception in event callback. {
    line = ???;
    message = "'undefined' is not a function (evaluating 'parts.getWidth()')";
    name = TypeError;
    sourceId = ???;
}

JavaScript¤Ç¤ÏÌäÂê¤Ê¤¤¤Î¤ÇTitanium Mobile¼«¿È¤ÎÉÔ¶ñ¹ç¤Î¤è¤¦¤Ç¤¹¡£¼¡¤Î¤è¤¦¤Ë¤¹¤ì¤Ð²óÈò¤Ç¤­¤Þ¤·¤¿¡£

// Titanium Mobile¤ÇÉÔ¶ñ¹ç¤Îµ¯¤­¤¿¥½¡¼¥¹¡£
// ÇÛÎó¤ËÆþ¤Ã¤Æ¤¤¤ë¸Ä¿ôʬ¥ë¡¼¥×¤¹¤ë¤Î¤Ç¤¹¤¬¡¢¼èÆÀ¤·¤¿view¤òUIView¤Î¥ª¥Ö¥¸¥§¥¯¥È¤È¤·¤Æ»È¤¨¤Þ¤»¤ó¡£
for (var view in viewArray) {
	Ti.API.info('width: ' + view.getWidth());
}
// Titanium Mobile¤ÇÀµ¾ï¤ËÆ°¤¯¥½¡¼¥¹¡£
// ¥¤¥ó¥Ç¥Ã¥¯¥¹¤ò»ÈÍѤ·¤¿for¥ë¡¼¥×¤ËÊѤ¨¤ì¤Ð¼£¤ê¤Þ¤·¤¿¡£
var view;
for (var i = 0; i < viewArray.length; i++) {
	view = viewArray[i];
	Ti.API.info('width: ' + view.getWidth());
}

TIPS

¥¢¥×¥ê̾ÀßÄêÊýË¡

iOS

i18n/ja/app.xml, i18n/en/app.xml¤ÇÀßÄꤷ¤Þ¤¹¡£

<?xml version="1.0" encoding="UTF-8"?>
<resources>
	<string name="appname">iOS ¥¢¥×¥êFoo</string>
</resources>

Android

i18n/ja/strings.xml, i18n/en/strings.xml¤ÇÀßÄꤷ¤Þ¤¹¡£

<?xml version="1.0" encoding="UTF-8"?>
<resources>
	<string name="appname">Android ¥¢¥×¥êFoo</string>
</resources>
  1. Resources¤äbuild¥Õ¥©¥ë¥À¤È²£Ê¤ӤËplatform¥Õ¥©¥ë¥À¤òºîÀ®
  2. platform¥Õ¥©¥ë¥À¤ÎÃæ¤Ëandroid¥Õ¥©¥ë¥À¤òºîÀ®
  3. build/android/AndroidManifest.xml¤òplatform/android/AndroidManifest.xml¤Ë¥³¥Ô¡¼
  4. android:label="¥×¥í¥¸¥§¥¯¥È̾"¤È¤Ê¤Ã¤Æ¤¤¤ë£²²Õ½ê¤òandroid:label="@string/appname"¤ËÊѹ¹

iOS¤Î¥Ð¡¼¥¸¥ç¥ó¤Çʬ´ô¤µ¤»¤ëÊýË¡

// ¡Ö4.3.2¡×¤Ê¤É¤È¤¤¤Ã¤¿¥Ð¡¼¥¸¥ç¥óʸ»úÎó¤ò¥Ñ¡¼¥¹
var versionNumber = parseFloat(Ti.Platform.version);
if (versionNumber >= 5) {
	// ¥Ð¡¼¥¸¥ç¥ó£µ°Ê¾å
} else if (versionNumber < 5) {
	// ¥Ð¡¼¥¸¥ç¥ó£µÌ¤Ëþ
} else {
	// ¥¨¥é¡¼½èÍý
}

WebView¤ÇÇطʤòÆ©ÌÀ¤Ë¤¹¤ëÊýË¡

¥Í¥¤¥Æ¥£¥Ö¤ËÈæ¤Ù¤ÆÃÙ¤¤¤è¤¦¤Ç¤¹¡£

// Resources/file/foo.html¤ÎWebView¤òºîÀ®
var fooWebView = Ti.UI.createWebView({
	url: '/fle/foo.html',
	backgroundColor: 0
});

µ»½Ñ¼Ô¥Ö¥í¥°

iOS TIPS¥ê¥ó¥¯

Android TIPS¥ê¥ó¥¯

¥«¥á¥éTIPS¥ê¥ó¥¯

TIPS¥ê¥ó¥¯

¥ê¥ó¥¯