Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
AndroidÉϵÄPhoneGap ºÍ Dojo Mobile
 
×÷ÕߣºBryce Curtis,Gill Woodcock,Todd</ Kaplinger À´×ÔÓÚ£º²©¿ÍÔ° ·¢²¼ÓÚ 2015-8-14
  2507  次浏览      28
 

ÔÚ±¾ÏµÁÐÖУ¬½«´Ó´´½¨Ò»¸ö¼òµ¥Òƶ¯Ó¦ÓóÌÐò¿ªÊ¼£¬²¢ÒÔÄܹ»ÔÚÄúµÄ Android É豸ÉÏʹÓà Web ·þÎñ½áÊø¡£ÎÒÃǽ«Á˽âÈçºÎʹÓà Eclipse ºÍ PhoneGap ´´½¨½öʹÓà HTML ºÍ JavaScript µÄÒÆ¶¯»ìºÏÓ¦ÓóÌÐò¡£Äú»¹½«Ê¹Óà Dojo Mobile ΪӦÓóÌÐòÌṩһÖÖÓëÔ­ÉúÓ¦ÓÃÀàËÆµÄ¸Ð¾õ¡£ÔÚ±¾ÎÄÖУ¬½«Á˽âÈçºÎ½áºÏʹÓà PhoneGap ºÍ Dojo Mobile£¬¿ìËÙΪ Android ´´½¨Ò»¸öÍâ¹ÛºÍÐÐΪ¶¼ÀàËÆÓÚµäÐÍ Android Ó¦ÓóÌÐòµÄ»ìºÏÒÆ¶¯Ó¦ÓóÌÐò¡£

¼ò½é

ÎÞÂÛÄú×ßµ½ÄÄÀ¶¼ÄÜ¿´µ½ÈËÃÇʹÓÃÒÆ¶¯É豸ÓëÇ×Åó½øÐÐÁªÏµ£¬±ÈÈçÕÕÕÅÕÕÆ¬·¢²¼µ½Éç½»ÍøÕ¾ÉÏ£¬²éÕÒ·¹µêµØÖ·£¬»òÕ߲鿴×îеÄÐÂÎűêÌâ¡£ÒÆ¶¯É豸µÄÍâÐκͿîʽ¸÷ʽ¸÷Ñù¡£Òƶ¯µç»°¿ÉÒÔÔËÐи÷ÖÖ²»Í¬µÄ²Ù×÷ϵͳ£¬±ÈÈç Apple µÄ iOS¡¢Google µÄ Android ÒÔ¼° Research In Motion µÄ Blackberry¡£ÓÐÐ©ÒÆ¶¯É豸ӵÓнϴóµÄÏÔʾÆÁºÍÎïÀí¼üÅÌ£¬¿ÉÔËÐÐÓÚ 3G¡¢4G »ò WiFi ÍøÂçÖ®ÉÏ¡£Òƶ¯µç»°¿ÉÄÜ»¹ÓмÓËÙ¡¢Î»ÖÃÉõÖÁ¸¶¿î´«¸ÐÆ÷¡£ÓÐЩÉ豸ÉõÖÁ²»Êǵ绰£»ËüÃÇ¿ÉÄÜÊÇÓµÓдóÏÔʾÆÁ²¢ÇÒÖ»ÄÜ´«ÊäÊý¾ÝµÄÍøÂçÁ¬½ÓµÄƽ°åµçÄÔ¡£

¾¡¹ÜÍâÐÎÉÏǧ²îÍò±ð£¬µ«¸÷ÖÖÒÆ¶¯É豸ÓÐÒ»¸ö¹²Í¬µã£ºËüÃǶ¼¿ÉÒÔÔËÐÐÒÆ¶¯Ó¦ÓóÌÐò¡£Òƶ¯Ó¦ÓóÌÐò¿ÉÒÔ»®·ÖΪÁ½ÖÖÀàÐÍ£º

Ô­ÉúÓ¦ÓóÌÐò

Ô­ÉúÓ¦ÓóÌÐòÊÇһЩ¶þ½øÖÆ¿ÉÖ´ÐгÌÐò£¬ËüÃǰ²×°ÔÚÉ豸ÉÏ£¬Í¨¹ýÈí¼þ¿ª·¢¹¤¾ß°ü (SDK) ´´½¨£¬ÓÉÓ¦ÓóÌÐòÉ̵ê·Ö·¢¡£Ã¿¸öÒÆ¶¯²Ù×÷ϵͳ¶¼ÓÐÒ»¸ö SDK£¬Òź¶µÄÊÇ£¬Ã¿¸ö²Ù×÷ϵͳµÄ SDK ¶¼²»Ïàͬ¡£

ÀýÈ磬ҪΪ iOS ´´½¨Ò»¸öÓ¦ÓóÌÐò£¬Ôò±ØÐëÏÂÔØ²¢°²×° iOS SDK ºÍ¿ª·¢¹¤¾ß£¬±ØÐëʹÓà Objective-C ±à³ÌÓïÑÔ½øÐÐÓ¦ÓóÌÐò±àÂë¡£Android Ó¦ÓóÌÐòͨ¹ý Android SDK ¿ª·¢£¬Ê¹Óà Java ÓïÑÔ±àд¡£Òò´Ë£¬Òª´´½¨Ò»¸öÒÆ¶¯Ó¦ÓóÌÐò£¬Ôò±ØÐëÁ˽âÿ¸ö SDK ²¢Ê¹ÓÃÖ§³ÖµÄ±à³ÌÓïÑÔ±àдӦÓóÌÐò¡£Ã¿¸öƽ̨µÄ SDK ¶¼ÓÐÒ»¸ö¶¸Ç͵ÄѧϰÇúÏߣ¬Òò´ËÒÆ¶¯Ó¦ÓóÌÐò¿ª·¢·Ç³£¸´ÔÓ¡£

Web Ó¦ÓóÌÐò

Web Ó¦ÓóÌÐòÓÃÓÚÔØÈëÒÆ¶¯ Web ä¯ÀÀÆ÷£¬ËüÃÇÓëÔ­ÉúÓ¦ÓóÌÐòµÄÇø±ðÔÚÓÚ£ºÎÞÂÛÉ豸²ÉÓÃÄÄÖÖ²Ù×÷ϵͳ£¬ËüÃǶ¼Í¨¹ý Web ¼¼Êõ£¨HTML¡¢JavaScript ºÍ CSS£©½øÐбàÂ롣ûÓбØÒªÕë¶Ôÿ¸öÉ豸ѧϰ²»Í¬µÄ±à³ÌÓïÑÔ¡£Web ¿ª·¢ÈËÔ±¶Ô HTML ºÍ JavaScript Ó¦¸ÃºÜÊìϤ£¬ÒòΪ¾­³£Ê¹ÓÃËüÃÇ´´½¨¼ÓÔØµ½×ÀÃæä¯ÀÀÆ÷ÖеÄÍøÒ³¡£¶àÊýÇé¿öÏ£¬Òƶ¯ä¯ÀÀÆ÷ÄܳÊÏÖÏàͬµÄÍøÒ³£¬µ«£¨ÓÉÓÚÒÆ¶¯É豸ÆÁÄ»½ÏС£¬ÍøÂçÁ¬½Ó½ÏÂý£©ÍøÕ¾Í¨³£Ìṩһ¸öÒÆ¶¯°æ±¾£¬¸Ã°æ±¾ÄÚÈݽÏÉÙ£¬¼ÓÔØËٶȸü¿ì¡£

Òª ¡°ÔËÐС± Ò»¸ö Web Ó¦ÓóÌÐò£¬Óû§¿ÉÒÔÔÚÒÆ¶¯ Web ä¯ÀÀÆ÷ÖÐÊäÈëÒ»¸ö URL¡£Õâ½«ÔØÈëÒ»¸öÍøÒ³£¬¸ÃÍøÒ³ÊÇÒ»¸ö Web Ó¦ÓóÌÐòµÄÈë¿Úµã¡£Web Ó¦ÓóÌÐò²»Í¨¹ýÓ¦ÓóÌÐòÉ̵ê·Ö·¢£»ËüÃÇÖ»ÊÇһЩÁ´½Ó£¬¿ÉÒÔ°üº¬ÔÚÆäËûÍøÒ³¡¢µç×ÓÓʼþÉõÖÁÓ²¿½±´ÖС£

Ô­ÉúÓ¦ÓóÌÐòºÍ Web Ó¦ÓóÌÐò¶¼Óи÷×ÔµÄÓÅȱµã£¬¹ØÓÚÄĸö¸üºÃÓõÄÕùÂۺܶࡣΪÁ˽â¾öÕâÖÖÕùÖ´£¬¿ª·¢ÁËÒ»ÖÖеĻìºÏ Ó¦ÓóÌÐò£¬ÊÔͼÓÃËüÀ´½áºÏÔ­ÉúÓ¦ÓóÌÐòºÍ Web Ó¦ÓóÌÐòµÄÓŵ㡣

Óë Web Ó¦ÓóÌÐòÒ»Ñù£¬»ìºÏÓ¦ÓóÌÐòͨ¹ý Web ¼¼Êõ±àд£¬µ«±»´ò°üΪԭÉúÓ¦ÓóÌÐò¡£»ìºÏÓ¦ÓóÌÐò¿ÉÒÔͨ¹ýÐí¶à¿ª·¢ÈËÔ±¶¼ÊìϤµÄ±à³ÌÓïÑÔ±àд£¬Ö»Ðè±àдһ´Î¼´¿ÉÓÃÓÚ¶àÖÖÉ豸²Ù×÷ϵͳ¡£ÓÉÓÚ»ìºÏÓ¦ÓóÌÐòȷʵÊÇÔ­ÉúÓ¦ÓóÌÐò£¬Òò´ËÓû§ÄÜ´Ó Web Ó¦ÓóÌÐòµ±Ç°²»¿ÉÓÃµÄ JavaScript ·ÃÎÊÉ豸¹¦ÄÜ¡£ÓëÔ­ÉúÓ¦ÓóÌÐòÒ»Ñù£¬»ìºÏÓ¦ÓóÌÐòÒ²ÄÜͨ¹ýÓ¦ÓóÌÐòÉ̵ê·Ö·¢ºÍ°²×°¡£

PhoneGap ÊÇÒ»¸öÁ÷ÐеĻìºÏÓ¦ÓóÌÐò¹¹½¨¹¤¾ß°ü¡£ËüÊÇÒ»¸ö¿ªÔ´Òƶ¯¿ò¼Ü£¬°üº¬Ò»¸ö JavaScript API£¬ÓÃÓÚ·ÃÎʼÓËÙÒǺÍÏà»úµÈÉ豸¹¦ÄÜ¡£
±¾ÎĽ«Õ¹Ê¾ÈçºÎʹÓà PhoneGap ºÍ Dojo Mobile ¹¤¾ß°ü¿ª·¢Ò»¸ö»ìºÏÒÆ¶¯ Android Ó¦ÓóÌÐò¡£Á˽âÈçºÎʹÓà Android Ä£ÄâÆ÷ºÍ¹¤¾ßÀ´²âÊÔÓ¦ÓóÌÐò£¬²é¿´ÈçºÎÔÚ Android É豸»òƽ°åµçÄÔÉÏÔËÐÐÄúµÄÓ¦ÓóÌÐò¡£

ÏȾöÌõ¼þ

±¾Îļٶ¨Äú±È½ÏÊìϤ Eclipse ¿ª·¢»·¾³¡¢HTML¡¢JavaScript ºÍ CSS¡£±¾ÎÄ»¹ÐèÒªÒÔÏÂÈí¼þ£º

Windows¡¢OSX »ò Linux ²Ù×÷ϵͳ

Java Development Kit (JDK) 5 »ò JDK 6£¨Ò»¸ö JRE ²»¹»Óã©

Ò»¸ö Eclipse ¿ª·¢»·¾³£¬±ÈÈç Eclipse Helios V3.6 »òÆä¸ü¸ß°æ±¾£¬»òÕß IBM Rational Application Developer V8

Android SDK ºÍƽ̨£¨r12 »òÆä¸ü¸ß°æ±¾£©

Eclipse µÄ Android Development Toolkit (ADT) ²å¼þ

PhoneGap SDK£¨ V1.0.0 »òÆä¸ü¸ß°æ±¾£©

Dojo Toolkit£¨V1.6 »òÆä¸ü¸ß°æ±¾£©

ÉèÖÿª·¢»·¾³

ÒªÉèÖÿª·¢»·¾³£¬ÇëÖ´ÐÐÒÔϲ½Ö裺

°²×° JDK ºÍ Eclipse »ò Rational Application Developer

ÏÂÔØ Android SDK

ÏÂÔØ²¢°²×° Eclipse µÄ ADT ²å¼þ

°²×°±ØÒªµÄ Android ƽ̨

н¨Ò»¸ö Android Virtual Device (AVD)

ÅäÖÃ Eclipse for Android

ÏÂÔØ PhoneGap SDK

ÏÂÔØ Dojo Toolkit

°²×° JDK ºÍ Eclipse »ò Rational Application Developer

Ê×ÏÈÐèҪȷÈÏÒѰ²×° JDK 5 »ò¸ü¸ß°æ±¾¡£·ñÔò£¬ÏÂÔØ Java SE JDK £¨²Î¼û ²Î¿¼×ÊÁÏ£©¡£

±¾ÎÄÔÊÐíʹÓà Eclipse »ò IBM Rational Application Developer (RAD)¡£RAD Ö§³Ö Windows ºÍ Linux¡£OSX ¿ª·¢ÈËÔ±¿ÉÒÔʹÓà Eclipse¡£

RAD °üº¬ IBM µÄ Eclipse °æ±¾£¬ÒÔ¼°ÆäËûÖ§³Ö Java EE µÄ¹¤¾ß£¬±ÈÈç IBM µÄ Web 2.0 Feature Pack¡£ÒªÊ¹Óà RAD£¬ÄúÐèÒª Version 8 »ò¸ü¸ß°æ±¾¡£RAD °üº¬ IBM µÄ JDK£¬ÕâÊÇĬÈÏÉèÖᣵ«ÊÇ£¬Õâ¸ö JDK ²»°üº¬´´½¨ºÍÇ©Êð Android Ó¦ÓóÌÐòËùÐèµÄ Java °ü¡£Òª¸ü¸ÄΪʹÓà Java SE JDK£¬ÔòÐèҪʹÓà Çåµ¥ 1 ÖеÄÐÅÏ¢Ìæ»» C:/Program Files/IBM/SDP/eclipse.ini£¨»òÕßÄúµÄÒѰ²×° RAD µÄλÖã©¡£

Çåµ¥ 1. Windows É쵀 RAD µÄ eclipse.ini

-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-install
C:/Program Files/IBM/SDP
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

Èç¹ûÄúÏëʹÓà Eclipse£¬ÔòÐèÒª Version 3.6 »ò¸ü¸ß°æ±¾¡£ÓÉÓÚ±¾ÏµÁкóÃæÐèÒª±àд Web ·þÎñ£¬Òò´ËÇëÄúÏÂÔØ Eclipse IDE for Java EE Developers£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©¡£µ«ÊÇ£¬Èç¹ûÄúÖ»Ïë±àдһ¸ö Android Ó¦ÓóÌÐò£¬ÄÇô»¹¿ÉÒÔʹÓà Eclipse IDE for Java Developers¡£
Eclipse ºÍ RAD ·Ç³£ÏàËÆ¡£ÔÚ±¾ÎÄÖУ¬Èç¹ûÌáµ½ Eclipse£¬Eclipse ºÍ RAD ¾ùÊÊÓᣵ«ÊÇ£¬ÆÁÄ»½ØÍ¼À´×Ô Windows ÉÏÔËÐÐµÄ RAD¡£

ÏÂÔØ Android SDK

¿ª·¢ Android Ó¦ÓóÌÐò±ØÐëʹÓà Android SDK£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©£¬ËüÊÇÒ»¸öÃüÁîÐгÌÐò¼¯ºÏ£¬ÓÃÓÚ±àÒë¡¢¹¹½¨¡¢Ä£ÄâºÍµ÷ÊÔ Android Ó¦ÓóÌÐò¡£

Èç¹ûÄúÕýÔÚ Windows Éϰ²×°Ó¦ÓóÌÐò£¬×î¼òµ¥µÄ·½·¨ÊÇÏÂÔØ zip °ü²¢½«Æä½âѹµ½ÄúµÄ C:\ ¸ùĿ¼¡£r12 °²×°³ÌÐòÓÐÁ½¸öÎÊÌ⣺²»Äܼì²âµ½ Java£»ÎÞ·¨°²×°µ½Ä¿Â¼Ãû¾ßÓпոñµÄλÖÃÖС£

ÏÂÔØºÍ°²×° ADT ²å¼þ

Android ÌṩÁËÒ»¸ö Eclipse ²å¼þ£¬Õ⼫´óµØ¼ò»¯ÁËÓ¦ÓóÌÐò¿ª·¢¡£½« Android Óë Eclipse ¼¯³É£¬¿ÉÌṩһ¸ö¿ìËÙ¿ª·¢»·¾³¡£Òª°²×° Android Development Toolkit (ADT) ²å¼þ£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©£¬ÇëÍê³ÉÒÔϲ½Ö裺

1.´Ó Eclipse ÖÐÑ¡Ôñ²Ëµ¥Ïî Help > Install New Software¡­ > Add¡­

2.ÊäÈëÈí¼þÃû³ÆºÍ URL λÖã¬Èç ͼ 1 Ëùʾ¡£Ãû³ÆÊÇ Android ADT Eclipse plugin£»Î»ÖÃΪ https://dl-ssl.google.com/android/eclipse/¡£

ͼ 1. °²×° Android ADT ²å¼þ

3.Ñ¡Ôñ Developer Tools£¬È·ÈÏËùÓи´Ñ¡¿ò¾ùÒÑÑ¡ÖУ¨Èç ͼ 1 Ëùʾ£©£¬È»ºóÑ¡Ôñ Next¡£

4.Èçͼ ͼ 2 Ëùʾ£¬Ñ¡Ôñ Next ½ÓÊÕÐí¿ÉЭÒé²¢°²×°ÏîÄ¿¡£

ͼ 2. °²×°Ï¸½Ú

°²×°Íê³Éºó£¬ÖØÐÂÆô¶¯ Eclipse¡£

°²×° Android ƽ̨

Òª±àÒë Android Ó¦ÓóÌÐòµÄÒ»¸öÌØ¶¨°æ±¾£¬±ØÐëÏÂÔØ²¢°²×°Ò»¸ö»ò¶à¸ö Android ƽ̨¡£¸Ãƽ̨ÉÏÌṩÁË¿âÎļþºÍÄ£ÄâÆ÷¡£

´Ó Eclipse Öдò¿ª Android SDK and AVD Manager£¬¿ÉʹÓÃËüÀ´¹ÜÀíÄúµÄÓ¦ÓóÌÐòʹÓÃµÄ Android SDK °æ±¾ºÍÄ£ÄâÆ÷¡£

Ñ¡Ôñ Window > Android SDK and AVD Manager£¬Èç ͼ 3 Ëùʾ£º

ͼ 3. Android ÅäÖõIJ˵¥Ïî

°²×°ÓÃÀ´ÔËÐÐÓ¦ÓóÌÐòµÄ Android °æ±¾ËùÐèµÄ SDK ƽ̨¡£

ʾÀýÓ¦ÓóÌÐòÐèҪʹÓà GPS ¶¨Î»·þÎñ£¬Òò´ËÄúÓ¦¸ÃÑ¡Ôñ²¢°²×°Ò»¸ö»ùÓÚ Google APIs µÄƽ̨¡£ÀýÈ磬ѡÔñ Google APIs by Google Inc., Android API 8, revision 2£¬Èç ͼ 4 Ëùʾ¡£Èç¹û²»ÐèҪʹÓà GPS£¬ÄÇô¿ÉÒÔ°²×° Android Repository Àà±ðÏÂÁгöµÄƽ̨¡£

¶ÔÓÚ Windows °²×°£¬ÇëÑ¡Ôñ Google USB Driver °ü£¬ÒÔÖ§³ÖÁ¬½Óµ½ÄúµÄ Android µç»°¡£

Ñ¡Ôñ Install Selected¡£

ͼ 4. Android SDK and AVD Manager

½ÓÊÜÿ¸ö°üµÄÐí¿ÉЭÒ飬ȻºóÑ¡Ôñ Install£¬Èç ͼ 5 Ëùʾ£º

ͼ 5. Òª°²×°µÄ Android °ü

Manager ½«ÏÂÔØ²¢°²×°Ñ¡Öеİü¡£

´´½¨ÐéÄâ Android É豸

Android SDK and AVD Manager »¹ÓÃÓÚ´´½¨ºÍ¹ÜÀíÄúµÄÓ¦ÓóÌÐò½«Ê¹ÓõÄÄ£ÄâÆ÷ʵÀý¡£

´Ó Virtual Devices Ò³ÖÐÑ¡Ôñ New¡­ ´´½¨Ò»¸öРAVD¡£Èç ͼ 6 ÖÐËùʾ£¬ÊäÈëÃû³Æ¡¢Ä¿±ê¡¢SD ¿¨´óСºÍ HVGA Ƥ·ô£º

ͼ 6. н¨Ò»¸ö AVD

Ñ¡Ôñ Create AVD¡£

ÅäÖÃ Eclipse for Android

ÒªÅäÖà Eclipse for Android£¬ÔòÐèÒªÏÔʾ Preferences ¶Ô»°¿ò¡£

1.¶ÔÓÚ Windows£¬ÇëÑ¡Ôñ Window > Preferences > Android¡£

2.¶ÔÓÚ OSX£¬ÇëÑ¡Ôñ Eclipse > Preferences > Android¡£

¶ÔÓÚ SDK λÖã¬ÇëÑ¡Ôñ Browse¡­£¬È»ºóÑ¡Ôñ Android SDK ËùÔÚµÄĿ¼£¬Èç ͼ 7 ÖÐËùʾ£º

ͼ 7. Ϊ Eclipse Ö¸¶¨ SDK λÖÃ

Ñ¡Ôñ Apply ºÍ OK¡£

½« Android LogCat ÊÓͼÌí¼Óµ½ Eclipse IDE ÒÔ°ïÖúµ÷ÊÔ£º

Window > Show View > Other¡­
Android > LogCat

ͼ 8. LogCat ÊÓͼ

ÏÂÔØ PhoneGap SDK

PhoneGap ÊÇÒ»¸ö¿ªÔ´»ìºÏÒÆ¶¯Ó¦ÓóÌÐò¿ò¼Ü£¬Ö§³Ö¶à¸öƽ̨£¬°üÀ¨ Android¡¢iOS¡¢Blackberry¡¢Palm¡¢Symbian ºÍ Windows Phone¡£Í¨¹ýʹÓà PhoneGap£¬¿ÉÒÔʹÓñê×¼ Web ¼¼Êõ£¨HTML¡¢JavaScript ºÍ CSS£©ÇáËɱàд¿çÆ½Ì¨ÒÆ¶¯Ó¦ÓóÌÐò£¬²¢´Ó JavaScript ·ÃÎʼÓËÙÒǺÍÏà»úµÈÉè±¸ÌØÐÔ¡£²Î¼û ²Î¿¼×ÊÁÏ ÖеÄÁ´½ÓÁË½â¹ØÓÚÖ§³ÖÌØÐÔµÄÐÅÏ¢£¬¸ÃÐÅÏ¢Ìṩ¹ØÓÚ PhoneGap µÄ×îÐÂϸ½Ú¡£

PhoneGap Ìṩһ¸ö JavaScript APIs ¼¯ºÏ£¬Ö§³ÖµäÐÍ Web Ó¦ÓóÌÐò·ÃÎÊÎÞ·¨´ÓÒÆ¶¯ Web ä¯ÀÀÆ÷·ÃÎʵÄÐí¶àÉè±¸ÌØÐÔ¡£Õâͨ¹ýÔÚÄúµÄ Web Ó¦ÓóÌÐòÖÜΧʹÓÃÒ»¸ö±¾»ú°ü×°Æ÷ʵÏÖ¡£PhoneGap ½áºÏ Web Ó¦ÓóÌÐò´úÂëºÍÉ豸µÄä¯ÀÀÆ÷äÖȾÆ÷£¬Éú³ÉÒ»¸ö¿ÉÒÔ²¿Êðµ½Ó¦ÓóÌÐòÉ̵겢°²×°µ½É豸ÉϵÄÔ­ÉúÓ¦ÓóÌÐò¡£

PhoneGap API °üº¬µÄ¹¦ÄÜÔÊÐí·ÃÎÊÉ豸µÄ¼ÓËÙÒÇ¡¢ÒôƵÊÓÆµ²É¼¯Æ÷¡¢Ïà»ú¡¢Ö¸ÄÏÕ롢ͨÐż¡¢Îļþ¡¢µØÀí¶¨Î»¡¢ÍøÂ硢֪ͨºÍ´æ´¢Æ÷¡£PhoneGap API Îĵµ£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©»¹°üº¬¸ü¶àϸ½ÚºÍʾÀý¡£

ÏÂÔØ PhoneGap£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©ºó£¬ÉÔºó¿ÉÒÔ½«´úÂë¸´ÖÆµ½ÄúµÄ Android ÏîÄ¿ÖУ¨²Î¼û ¡°Ð½¨Ò»¸ö Android ÏîÄ¿¡± С½Ú£©¡£

ÏÂÔØ Dojo

Dojo Toolkit ÊÇÒ»¸ö¿ªÔ´ JavaScript ¹¤¾ß°ü£¬Éè¼ÆÓÃÓÚ¿ìËÙ²¿Êð¿ÉÒÔÔÚ Web ä¯ÀÀÆ÷ÖмÓÔØºÍÔËÐеÄÍøÕ¾ºÍÓ¦ÓóÌÐò¡£

ÓÉÓÚÒÆ¶¯ Web ä¯ÀÀÆ÷µÄ¹¦Äܲ»Èç×ÀÃæä¯ÀÀÆ÷£¬Òò´Ë Dojo °üº¬Ò»¸öÃûΪ Dojo Mobile µÄÒÆ¶¯°æ±¾¡£ËüÕë¶ÔÒÆ¶¯ Web ä¯ÀÀÆ÷½øÐÐÁËÓÅ»¯£¬ÌṩÐí¶à UI С²¿¼þºÍÖ÷Ì⣬ÓÃÓÚÉèÖÃÄúµÄÒÆ¶¯Ó¦ÓóÌÐòµÄ·ç¸ñ£¬ÒÔÄ£ÄâÔ­ÉúÓ¦ÓóÌÐò¡£

Dojo Mobile µÄһЩ¹Ø¼ü¹¦ÄܰüÀ¨£º

Dojo Mobile ½âÎöÆ÷µ¼ÖµÄÇáÁ¿¼¶Ð¡²¿¼þ¼ÓÔØ¡£

CSS3 ¶¯»­ºÍ¹ý¶É£¬ÓÃÓÚÔÚ¸ß¶Ë iOS ºÍ Android É豸ÉÏ´´½¨ÀàËÆÓÚÔ­ÉúÓ¦ÓóÌÐòµÄÌåÑé¡£

ÓÃÓÚ iOS ºÍ Android Íâ¹ÛµÄÖ÷Ìâ¡£

¶Ô·Ç CSS3 ¼æÈÝÉ豸ºÍä¯ÀÀÆ÷µÄ¼æÈÝÐÔ¡£

ÍêÕûµÄÉùÃ÷ÐÔÓï·¨£¬Ö§³ÖÒ»¸öÇáËÉѧϰÇúÏß¡£

´óÁ¿Ð¡²¿¼þ£¬¼´½«·¢²¼µÄ Dojo Mobile 1.7 »¹Óиü¶àС²¿¼þ¡£

¶ÔÓÚ±¾ÎÄ£¬ÄúÐèÒªÏÂÔØ Dojo 1.6£¨Çë²ÎÔÄ ²Î¿¼×ÊÁÏ£©¡£

н¨Ò»¸ö Android ÏîÄ¿

ÏÖÔÚ¿ª·¢»·¾³ÒѾ­¾ÍÐ÷£¬ÏÂÃæÎÒÃÇÀ´´´½¨Ò»¸ö¼òµ¥ Android Ó¦ÓóÌÐò¡£

´Ó Eclipse£¬Ñ¡Ôñ File > New > Other¡­£¬È»ºóÑ¡Ôñ Android > Android project¡£ÄúÓ¦¸ÃÄÜ¿´µ½Ò»¸öÈç ͼ 9 ÖÐËùʾµÄ¶Ô»°¿ò¡£

ͼ 9. New Android project

Èç ͼ 9 ÖÐËùʾ£¬ÊäÈëÏîÄ¿Ãû³Æ£¬Ñ¡Ôñ¹¹½¨Ä¿±ê£¬ÊäÈëÓ¦ÓóÌÐòÃû³Æ¡¢°üÃû³ÆºÍ»î¶¯Ãû³Æ¡£È»ºóµ¥»÷ Finish ´´½¨ÏîÄ¿¡£

Ìí¼Ó PhoneGap ¿â

ÄúÏÖÔÚÓÐÁËÒ»¸ö¼òµ¥µÄ Android Ó¦ÓóÌÐò¡£ÔÚ±àд PhoneGap Ó¦ÓóÌÐò֮ǰ£¬ÐèÒªÌí¼Ó PhoneGap ¿â¡£ÓÐÁ½¸öÎļþ£ºÒ»¸ö JavaScript Îļþ£¬°üº¬ÎÒÃǵÄÓ¦ÓóÌÐòµ÷ÓÃµÄ PhoneGap API£»Ò»¸ö±¾»ú JAR Îļþ£¬°üº¬ PhoneGap API µÄ±¾»úʵÏÖ¡£

1.Õ¹¿ª AndroidPhoneGap ÏîÄ¿Ê÷ÊÓͼ£¬Èç ͼ 10 ÖÐËùʾ£º

ͼ 10. Android ÏîÄ¿ºÍ PhoneGap ¿â

2.´´½¨Ä¿Â¼ \assets\www¡£Èç¹û \libs Ŀ¼²»´æÔÚ£¬Ôò´´½¨¸ÃĿ¼¡£

3.½âѹ PhoneGap ÏÂÔØ²¢¶¨Î» Android ×ÓĿ¼¡£

4.½« Android ʹÓõÄÈý¸ö PhoneGap ¿âÎļþ¸´ÖƵ½ÒÔÏ Eclipse ÏîÄ¿Îļþ¼Ð£º

½« phonegap-1.0.0.jar ¸´ÖƵ½ \libs\phonegap-1.0.0.jar

½« phonegap-1.0.0.js ¸´ÖƵ½ \assets\www\phonegap-1.0.0.js

½« xml/plugins.xml ¸´ÖƵ½ \res\xml\plugins.xml

¼´Ê¹ PhoneGap JAR ÎļþÒѾ­¸´ÖƵ½ÏîÄ¿ÖУ¬ÈÔÈ»ÐèÒª½«ËüÌí¼Óµ½ÏîÄ¿µÄ¹¹½¨Â·¾¶¡£

1.Ñ¡Ôñ Project > Properties > Java Build Path > Libraries > Add JARs¡­¡£

2.ÔÚÏîÄ¿Öе¼º½µ½ phonegap-1.0.0.jar ²¢Ìí¼ÓËü£¬Èç ͼ 11 ÖÐËùʾ£º

ͼ 11. Ìí¼Ó PhoneGap JAR

×¼±¸ºÃʾÀý Android Ó¦ÓóÌÐòÒÔ±ãʹÓà PhoneGap µÄ×îºóÒ»¸ö²½ÖèÊÇÐÞ¸Ä App.java¡£ÓÉÓÚ PhoneGap Ó¦ÓóÌÐòÊÇʹÓà HTML ºÍ JavaScript ±àдµÄ£¬Òò´ËÄúÐèÒª¸ü¸Ä App.java£¬ÒÔ±ãʹÓà loadUrl() ¼ÓÔØÄúµÄ HTML Îļþ£¬Èç Çåµ¥ 2 Ëùʾ¡£Òª±à¼­ App.java£¬¿ÉÒÔË«»÷Ê÷ÊÓͼÖÐµÄ App.java£¬Èç ͼ 10 ÖÐËùʾ¡£

Çåµ¥ 2. App.java

Package com.ibm.swgs;
import android.os.Bundle;
import com.phonegap.*;
public class App extends DroidGap //Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
super.loadUrl("file:///android_asset/www/index.html");
}
}

±àд PhoneGap Ó¦ÓóÌÐò

ÏÖÔÚ¿ÉÒÔ¿ªÊ¼±àд PhoneGap Ó¦ÓóÌÐòÁË¡£¶ÔÓÚ Android£¬asset Ŀ¼ÏµÄÎļþͨ¹ý file:///android_asset ÒýÓ᣸ù¾Ý Çåµ¥ 2 ÖÐµÄ loadUrl() ÖеĹ涨£¬ÐèÒªÔÚ assets/www Ï´´½¨Ò»¸ö index.html Îļþ¡£

´´½¨ index.hml ºó£¬ÇëÊäÈë Çåµ¥ 3 ÖеÄÄÚÈÝ¡£

Çåµ¥ 3. index.html

<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="phonegap-1.0.0.js"></script>
</head>
<body onload='document.addEventListener("deviceready", deviceInfo, false);'>
<script>
function deviceInfo() {
document.write("<h1>This is Phonegap 1.0.0 running on "+device.platform+"
"+device.version+"!</h1>");
}
</script>
</body>
</html>

index.html µÄÒ»¸ö¼ò¶Ì½âÊÍÊ®·ÖÇ¡µ±¡£ÔÚµ÷ÓÃÈκΠPhoneGap APIs ֮ǰ£¬ÎÒÃDZØÐëµÈ´ý deviceready ʼþ£¬Ëü±íÃ÷ PhoneGap µÄ±¾»ú²¿·ÖÒѾ­±»³õʼ»¯²¢×¼±¸¾ÍÐ÷¡£ÔÚ Çåµ¥ 3 ÖУ¬onload »Øµ÷ deviceready ¡£µ±Ëü´¥·¢Ê±£¬ÎÒÃÇд³öÉ豸µÄ OS ºÍ°æ±¾¡£

ÓÉÓÚ PhoneGap ʹÓÃÓÐȨÏÞ±£»¤µÄ±¾»ú¹¦ÄÜ£¬ÐèÒªÐÞ¸Ä AndroidManifest.xml ÒÔ°üº¬ÕâЩ uses-permission ±ê¼Ç¡£»¹ÐèÒªÖ¸¶¨ support-screens ±ê¼Ç¡¢android:configChanges ÊôÐÔºÍ com.phonegap.DroidGap »î¶¯±ê¼Ç£¬Èç Çåµ¥ 4 Ëùʾ£º

Çåµ¥ 4. AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.ibm.swgs"
android:versionCode="1"
android:versionName="1.0">
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".App"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.phonegap.DroidGap" android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
</intent-filter>
</activity>
</application>
</manifest>

ÔÚ Android Ä£ÄâÆ÷ÖÐÔËÐÐÓ¦ÓóÌÐò

PhoneGap Ó¦ÓóÌÐòÏÖÔÚ¿ÉÒÔÔËÐÐÁË¡£ÇëÑ¡Ôñ Run > Run As > Android Application£¬ÏÖÔÚÄúÓ¦¸ÃÄܹ»¿´µ½ÀàËÆÓÚ Í¼ 12 µÄ»­Ãæ¡£

ͼ 12. Android Ä£ÄâÆ÷

Eclipse ×Ô¶¯¹¹½¨Ó¦ÓóÌÐò£¬Æô¶¯Ä£ÄâÆ÷£¬²¢ÔÚÄ£ÄâÆ÷Éϰ²×°²¢ÔËÐÐÓ¦ÓóÌÐò¡£

Ä£ÄâÆ÷Æô¶¯¿ÉÄÜÐèÒª¼¸·ÖÖÓʱ¼ä¡£Îª¼ÓËÙ¿ª·¢£¬Ó¦Ê¹µÃÄ£ÄâÆ÷±£³ÖÔËÐÐ״̬£¬Ö±µ½¿ª·¢»á»°½áÊø¡£Eclipse ½«×Ô¶¯Ê¹ÓÃÕýÔÚÔËÐеÄÄ£ÄâÆ÷£¬¶ø²»ÊÇÆô¶¯Ò»¸öÐÂÄ£ÄâÆ÷¡£

ÔÚ Android µç»°ÉÏÔËÐÐÓ¦ÓóÌÐò

Èç¹ûÄúÓÐ Android µç»°£¬¾Í¿ÉÒÔÔÚÄúµÄÉ豸ÉÏÔËÐÐ PhoneGap Ó¦ÓóÌÐò¡£µ«ÊÇ£¬ÔÚʹÓÃÄúµÄÊÖ»ú½øÐпª·¢Ö®Ç°£¬ÐèÒª´ò¿ª USB µ÷ÊÔ¹¦ÄÜ£¬ÈçÏÂËùʾ£º

1.Çл»µ½Ö÷½çÃæ²¢Ñ¡Ôñ Menu¡£

2.Ñ¡Ôñ Settings > Applications > Development¡£

3.ÆôÓÃ USB debugging¡£

4.»¹ÐèÒªÔÚ Android Manifest Öн«Ó¦ÓóÌÐòÉùÃ÷Ϊ¿Éµ÷ÊÔ¡£±à¼­ AndroidManifest.xml Îļþ£¬½« android:debuggable="true" Ìí¼Óµ½ <application> ÔªËØ¡£

5.ͨ¹ý USB ½« Android µç»°Á¬½Óµ½ÄúµÄ¿ª·¢»úÆ÷¡£

6.ÒªÔËÐÐÓ¦ÓóÌÐò£¬Ñ¡Ôñ Run As > Android Application¡£

ϵͳ½«ÌáʾÄúÑ¡ÔñÄ£ÄâÆ÷»¹ÊÇÕæÊµÉ豸×÷ΪĿ±ê¡£Ñ¡Ôñ Android µç»°£¬Èç ͼ 13 Ëùʾ£º

ͼ 13. Ñ¡ÔñÉ豸

Ó¦ÓóÌÐòÏÂÔØ²¢°²×°µ½ÄúµÄµç»°ÉÏÖ®ºó£¬Ëü½«±»Æô¶¯£¬Èç ͼ 14 Ëùʾ£º

ͼ 14. É豸ÉÏÔËÐеÄÓ¦ÓóÌÐò

ʹÓà Dalvik Debug Monitor Server (DDMS)

ADT ²å¼þ°üº¬Ò»¸öÓÃÓÚµ÷Ê﵀ Dalvik Debug Monitor Server (DDMS) ͸ÊÓͼ¡£DDMS µÄÓÃ;ÊǸú×ٺ͵÷ÊÔÓ¦ÓóÌÐòÁ÷£¬¿ÉÓÃÓÚÄ£ÄâÆ÷ºÍÕæÊµÉ豸¡£

DDMS ͸ÊÓͼ¿ÉÒÔ´Ó Eclipse Æô¶¯£ºÑ¡Ôñ Window > Open Perspective > Other... > DDMS¡£Í¼ 15 ÖÐչʾÁËÒ»¸öʾÀý¡£

ͼ 15. Eclipse ÖÐµÄ DDMS ´°¿Ú

DDMS Ò²¿ÉÒÔʹÓÃÃüÁîÐÐ´Ó Android SDK µÄλÖÃÆô¶¯¡£

¶ÔÓÚ Windows£ºC:\android-sdk-windows\tools\ddms.bat

¶ÔÓÚ OSX£º.../android-sdk-mac-86/tools/ddms

ͼ 16. ¶ÀÁ¢µ÷ÊÔÆ÷

DDMS ÌṩÒÔϹ¦ÄÜ£º

²é¿´ÈÕÖ¾¿ØÖÆÌ¨

ÏÔʾÉ豸ÉϵĽø³ÌµÄ״̬

¼ì²éÏß³ÌÐÅÏ¢

²é¿´½ø³ÌµÄ¶ÑʹÓÃÇé¿ö

Ç¿ÖÆÖ´ÐÐÀ¬»øÊÕ¼¯

¸ú×Ù¶ÔÏóµÄÄÚ´æ·ÖÅä

Ö´Ðз½·¨ÅäÖà (profiling)

´¦ÀíÉ豸µÄÎļþϵͳ

Ö´ÐÐÉ豸µÄÆÁÄ»½ØÍ¼

Ä£Äâµç»°²Ù×÷

²Î¼û ²Î¿¼×ÊÁÏ ÖÐµÄ DDMS Îĵµ£¬Á˽âÓйصĸü¶àÐÅÏ¢¡£

ʹÓà Dojo À©Õ¹ÏîÄ¿

Dojo ÊÇÒ»¸ö JavaScript ¹¤¾ß°ü£¬¿ÉÒÔÏòÒÆ¶¯Ó¦ÓóÌÐòÌṩ¼¸¸öºÃ´¦¡£ËüÌṩһЩÖ÷ÌâÀ´Ä£Äâ±¾»úÒÆ¶¯Ó¦ÓóÌÐò£¬Ëü»¹ÓµÓÐһЩÓû§½çÃæ (UI) ÈÝÆ÷ºÍС²¿¼þ£¬¿ÉÓÃÓÚ¼ò»¯Ó¦ÓóÌÐò UI ¿ª·¢¡£

Õë¶Ô Dojo µÄÉèÖÃ

ҪʹÓà Dojo£¬ÐèÒª½«Æä¸´ÖƵ½Ê¾ÀýÏîÄ¿ÖС£

´´½¨ÒÔÏÂĿ¼£¬Èç ͼ 17 Ëùʾ¡£

\assets\www\libs
\assets\www\libs\dojo
\assets\www\libs\dojo\dojo
\assets\www\libs\dojo\dojox

¸´ÖÆÒÔÏ Dojo Îļþ£º

´Ó dojox\mobile.js ¸´ÖƵ½ \assets\www\libs\dojo\dojox Ŀ¼

´Ó dojox\mobile Ŀ¼¸´ÖƵ½ \assets\www\libs\dojo\dojox Ŀ¼

´Ó dojo\dojo.js ¸´ÖƵ½ \assets\www\libs\dojo\dojo Ŀ¼

ͼ 17. Ìí¼ÓÁË Dojo µÄ Android ÏîÄ¿

Òª¼ÓÔØ Dojo£¬ÐèÒª±à¼­ index.html£¬°üº¬ phonegap-1.0.0.js ½Å±¾±ê¼Ç֮ǰµÄ <head> ÇøÓòÖеÄÐУ¬Èç Çåµ¥ 5 Ëùʾ¡£

Çåµ¥ 5. ½« Dojo Ìí¼Óµ½ index.html

<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,
minimum-scale=1,user-scalable=no"/>
<link rel="stylesheet" href="libs/dojo/dojox/mobile/themes/android/android.css"
type="text/css" media="screen" title="no title" charset="utf-8">
<script type="text/javascript" src="libs/dojo/dojo/dojo.js" djConfig="parseOnLoad:true">
</script>

ÔÚΪ phonegap-1.0.0.js Ìí¼Ó½Å±¾±ê¼ÇÖ®ºó£¬Îª Dojo ÒÆ¶¯½âÎöÆ÷ÌṩһЩ require Óï¾ä£¬Èç Çåµ¥ 6 Ëùʾ¡£

Çåµ¥ 6. ÐÞ¸Ä index.html ÒÔ¼ÓÔØÒÆ¶¯ Dojo

<script type="text/javascript">
dojo.require("dojox.mobile.parser");
dojo.require("dojox.mobile");
</script>

¸üÐÂÓ¦ÓóÌÐò

½« index.html ÖеÄÏÖÓÐ <body> ±ê¼ÇÌæ»»ÎªÐ±ê¼Ç <body>£¬¸Ã±ê¼Ç°üº¬Á½¸ö¼òµ¥ <div> ²¿·Ö£¬Èç Çåµ¥ 7 Ëùʾ£º

Çåµ¥ 7. ÐÞ¸Ä index.html µÄ body ±ê¼Ç

<body>
<!-- ACCIDENT TOOLKIT PAGE -->
<div dojoType="dojox.mobile.View" id="accHelp" selected="true">
<h1 dojoType="dojox.mobile.Heading">Accident</h1>
<div class="text">If you are in an accident, you should first move to a safe
location. Below are some additional actions you can take:</div>
<ul dojoType="dojox.mobile.RoundRectList">
<li dojoType="dojox.mobile.ListItem"
onclick="window.location='geo:0,0?q=police';">Call the Police</li>
<li dojoType="dojox.mobile.ListItem"
onclick="window.location='geo:0,0?q=towing';">Call for a Tow Truck</li>
<li dojoType="dojox.mobile.ListItem" moveTo="accInfo" transition="slide"
onClick="itemClicked();">Exchange Driver Info</li>
<li dojoType="dojox.mobile.ListItem" moveTo="accInfo" transition="slide"
onClick="itemClicked();">Record Accident Location</li>
<li dojoType="dojox.mobile.ListItem" moveTo="accInfo" transition="slide"
onClick="itemClicked();">Take Photos of Accident</li>
</ul>
</div>
<!-- EXCHANGE DRIVER INFO PAGE -->
<div dojoType="dojox.mobile.View" id="accInfo">
<h1 dojoType="dojox.mobile.Heading" back="Accident" moveTo="accHelp"
onClick="console.log('Going back');">Driver</h1>
<h2 dojoType="dojox.mobile.RoundRectCategory">Other Driver Info</h2>
</div>
</body>

Èç Çåµ¥ 8 Ëùʾ£¬ÔÚ×îºóµÄ <div> ±ê¼ÇÖ®ºóÌí¼ÓÒ»¸ö¼òµ¥ JavaScript º¯Êý itemClicked()£¬½«ÈÕÖ¾¼Ç¼µ½¿ØÖÆÌ¨¡£

Çåµ¥ 8. Onclick ´¦Àí³ÌÐò

<script>
function itemClicked() {
console.log("itemClicked()");
}
</script>

ÔÚÄ£ÄâÆ÷ÉÏÔËÐÐ

ÒªÓ¦ÓóÌÐò×÷Ϊ Android Ó¦ÓóÌÐòÔËÐУ¬¿ÉÒÔÓÒ¼üµ¥»÷ÏîÄ¿²¢Ñ¡Ôñ Run as > Android Application¡£

ͼ 18. Ä£ÄâÆ÷ÉÏÔËÐеÄÓ¦ÓóÌÐò

Dojo Ó¦ÓóÌÐòÖеÄÿ¸öÆÁÄ»¶¼Í¨¹ýÒ»¸ö°üº¬ dojoType='dojox.mobile.View' µÄ div ÔªËØ¶¨Ò壬Èç Çåµ¥ 9 Ëùʾ¡£³õʼÆÁĻʹÓÃÊôÐÔ selected='true' ±êʶ¡£

ÆÁÄ»±êÌâͨ¹ýÒ»¸ö <h1 dojoType='dojox.mobile.Heading'> ±ê¼Ç¶¨Òå¡£

Çåµ¥ 9. ¶¨ÒåÆÁÄ»ºÍ±êÌâ

<div dojoType="dojox.mobile.View" id="accHelp" selected="true">
<h1 dojoType="dojox.mobile.Heading">Accident</h1>
</div>

×¢Òâ×îºóÈý¸öÁбíÏîÄ¿É쵀 >£¬ËüÊÇÒ»¸öָʾ·û£¬±íʾ½«¼ÓÔØÁíÒ»¸ö Dojo ÆÁÄ»¡£

dojoType='dojox.mobile.ListItem' µÄÁбíÏîÄ¿±ê¼ÇÓÃÓÚÏÔʾһÁпÉÑ¡ÔñµÄÏîÄ¿£¬Èç Çåµ¥ 10 Ëùʾ¡£Ëü±»ÏÔʾΪһ¸ö±¾»úÑ¡ÔñÁÐ±í¡£moveTo ÊôÐÔÖ¸¶¨ÒªÏÔʾÄĸö div£¬transition ÊôÐÔÖ¸¶¨ÈçºÎ½«ËüÒÆ¶¯µ½ÊÓͼÖС£

Çåµ¥ 10. ÓÃÓÚ¼ÓÔØÒ»¸öÐÂÆÁÄ»µÄÁбíÏî

<li dojoType="dojox.mobile.ListItem" moveTo="accInfo" transition="slide"
onClick="itemClicked();">Exchange Driver Info</li>

Ñ¡Ôñ Exchange Driver Info£¬Õ⽫Òþ²Øµ±Ç° div ²¢ÏÔʾ id='accInfo' µÄÄ¿±ê div¡£ÄúÓ¦¸ÃÄܹ»¿´µ½ Driver ÆÁÄ»»¬ÈëÊÓͼ£¬Èç ͼ 19 Ëùʾ¡£

ͼ 19. Driver ÐÅÏ¢ÆÁÄ»

ÁбíÏîÄ¿µÄ¹¦Äܲ»½ö½öÊǼÓÔØÆäËûÆÁÄ»¡£ÀýÈ磬onclick ´¦Àí³ÌÐò¿ÉÓÃÓÚÏÔʾһ¸ö Google µØÍ¼£¬ÆäÖаüº¬Ò»¸ö¶Ô×î½ü¾¯²ì¾ÖµÄËÑË÷¡£Çåµ¥ 11 ÏÔʾÁËÏà¹Ø´úÂë¡£

Òª·µ»ØÇ°ÃæµÄÆÁÄ»£¬Ñ¡Ôñ±êÌâÖÐµÄ Accident °´Å¥¡£

Çåµ¥ 11. ÓÃÓÚ¼ÓÔØÒ»¸ö Google µØÍ¼µÄÁбíÏî

<li dojoType="dojox.mobile.ListItem" 
onclick="window.location='geo:0,0?q=police';">Call the Police</li>

Ðí¶àÒÆ¶¯É豸֧³Ö geo: protocol¡£Í¨¹ý¼ÓÔØÐÎʽΪ geo:lat,lng?q=query µÄ URI£¬ÏÔʾ±¾»ú Google µØÍ¼·þÎñ¡£

Ñ¡ÔñÄ£ÄâÆ÷É쵀 Call the Police ÏÔʾ×î½üµÄ¾¯²ì¾ÖµÄµØÍ¼£¬Èç ͼ 20 Ëùʾ£º

ͼ 20. ËÑË÷×î½üµÄ¾¯²ì¾Ö

¸ù¾Ý DDMS ÖÐµÄ Emulator Control ÏÂÊäÈëµÄ¾­¶ÈºÍγ¶È£¬ÎÒÃǵÄλÖÿÉÄÜÓÐËù²»Í¬¡£Í¼ 21 ÏÔʾÁËÒ»¸öλÖÃÉèÖá£

ͼ 21. DDMS ÖеÄλÖÃÉèÖÃ

ÔÚÉ豸ÉÏÔËÐÐ

Èç¹ûÄúÁ¬½ÓÁËÒ»¸ö Android µç»°£¬°´ÕÕ ¡°ÔÚ Android µç»°ÉÏÔËÐÐÓ¦ÓóÌÐò¡± С½ÚÖеÄÃèÊöÔÚÄúµÄÉ豸ÉÏÔËÐÐÓ¦ÓóÌÐò¡£Èç ͼ 22 Ëùʾ£¬ÕâЩÆÁÄ»½«ÀàËÆÓÚÄ£ÄâÆ÷ÉϵÄÄÇЩÆÁÄ»¡£¾¯²ì¾ÖËÑË÷½«·µ»ØÄúµÄµ±Ç°Î»Öø½½üµÄ¾¯²ì¾Ö¡£

ͼ 22. É豸ÉÏÔËÐеÄÓ¦ÓóÌÐò

½áÊøÓï

ÔÚ±¾ÎÄÖУ¬Á˽âÁËÈçºÎ½áºÏʹÓà PhoneGap ºÍ Mobile Dojo£¬Îª Android ´´½¨Ò»¸öÍâ¹ÛºÍÐÐΪ¶¼ÓëµäÐÍ Android Ó¦ÓóÌÐòÀàËÆµÄ»ìºÏÒÆ¶¯Ó¦ÓóÌÐò¡£ÓÉÓÚÎÒÃÇʹÓõÄÊÇ HTML ºÍ JavaScript£¬¶ø²»ÊÇ Java£¬Òò´ËÎÒÃÇ¿ÉÒÔ¿ìËÙ±àдӦÓóÌÐò¡£¼øÓÚ Web ´úÂëÔÚËùÓÐÒÆ¶¯²Ù×÷ϵͳÉÏÊÇÏàͬµÄ£¬Òò´ËÖ»Ð踶³ö¼«ÉÙµÄŬÁ¦£¬¼´¿ÉΪ iOS ºÍ Blackberry ÇáËɹ¹½¨Õâ¸ö»ìºÏÓ¦ÓóÌÐò¡£

Çë¼ÌÐø¹Ø×¢±¾ÏµÁÐµÚ 2 ²¿·Ö£¬¸Ã²¿·Ö½«Õ¹Ê¾ÈçºÎʹÓà Dojo ºÍ PhoneGap ±àдһ¸öÒÆ¶¯±£ÏÕÓ¦ÓóÌÐò¡£

   
2507 ´Îä¯ÀÀ       28
 
Ïà¹ØÎÄÕÂ

ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖÓë̽ÌÖ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
 
Ïà¹ØÎĵµ

Android_UI¹Ù·½Éè¼Æ½Ì³Ì
ÊÖ»ú¿ª·¢Æ½Ì¨½éÉÜ
androidÅÄÕÕ¼°ÉÏ´«¹¦ÄÜ
Android½²ÒåÖÇÄÜÊÖ»ú¿ª·¢
Ïà¹Ø¿Î³Ì

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
Androidϵͳ¿ª·¢
AndroidÓ¦Óÿª·¢
ÊÖ»úÈí¼þ²âÊÔ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

androidÈË»ú½çÃæÖ¸ÄÏ
AndroidÊÖ»ú¿ª·¢£¨Ò»£©
AndroidÊÖ»ú¿ª·¢£¨¶þ£©
AndroidÊÖ»ú¿ª·¢£¨Èý£©
AndroidÊÖ»ú¿ª·¢£¨ËÄ£©
iPhoneÏûÏ¢ÍÆËÍ»úÖÆÊµÏÖ̽ÌÖ
ÊÖ»úÈí¼þ²âÊÔÓÃÀýÉè¼ÆÊµ¼ù
ÊÖ»ú¿Í»§¶ËUI²âÊÔ·ÖÎö
ÊÖ»úÈí¼þ×Ô¶¯»¯²âÊÔÑо¿±¨¸æ

Android¸ß¼¶Òƶ¯Ó¦ÓóÌÐò
AndroidÓ¦Óÿª·¢
Androidϵͳ¿ª·¢
ÊÖ»úÈí¼þ²âÊÔ
ǶÈëʽÈí¼þ²âÊÔ
AndroidÈí¡¢Ó²¡¢ÔÆÕûºÏ

ÁìÏÈIT¹«Ë¾ android¿ª·¢Æ½Ì¨×î¼Ñʵ¼ù
±±¾© Android¿ª·¢¼¼Êõ½ø½×
ijÐÂÄÜÔ´ÁìÓòÆóÒµ Android¿ª·¢¼¼Êõ
ijº½Ì칫˾ Android¡¢IOSÓ¦ÓÃÈí¼þ¿ª·¢
°¢¶û¿¨ÌØ LinuxÄÚºËÇý¶¯
°¬Ä¬Éú ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
Î÷ÃÅ×Ó Ç¶Èëʽ¼Ü¹¹Éè¼Æ