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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
PhoneGap¿ª·¢»·¾³´î½¨
 
×÷ÕߣºËæ»ú À´Ô´£º²©¿ÍÔ° ·¢²¼ÓÚ 2015-6-18
  2100  次浏览      28
 

ÏîÄ¿ÖÐÒªÓÃPhoneGap¿ª·¢£¬Á˽âÁËÏ»ù±¾¹æÔò£¬¼Ç¼һÏ£¬ÒÔ±¸ºó²é¡£(Ö»Õë¶ÔAndroidƽ̨)

Ò»¡¢°²×°

ÔÚ°²×°PhoneGap¿ª·¢»·¾³Ö®Ç°£¬ÐèÒªÏȰ²×°ÒÔÏ¿ò¼Ü£º

1.Java SDK

2.Eclipse

3.Android SDK

4.ADT Plugin

5.PhoneGap

˵Ã÷£º

1.Java SDKÖ±½ÓÏÂÔØ°²×°¼´¿É£¬Ã»Ê²Ã´¿É˵µÄ£¬°²×°²»Á˾ÍÊÇÈËÆ·ÎÊÌâÁË;

2.Eclipse Ò²ÊÇÖ±½ÓÏÂÔØ°²×°£¬½¨ÒéΪclassic°æµÄ;

3.Android SDKºÍADT Plugin°²×°Íê³Éºó£¬ÖØÆôeclipse½øÈëWindow->Android SDK Manager½øÐÐÑ¡ÔñÒª°²×°µÄAndroid¿ª·¢¿ò¼Ü½øÐа²×°

4.PhoneGap°ü²»Óð²×°£¬Ö±½Ó½âѹ¡£

¶þ¡¢µÚÒ»¸öPhoneGapÏîÄ¿

1.ÔÚeclipseÖÐн¨Android Project£¬Ãû×ÖÉñÂíµÄËæ±ãÈ¡°É£»

2.ÔÚÏîÄ¿µÄĿ¼Ï£¬½¨Á½¸öÎļþ¼Ð£º

/libs

/assets/www

3.½øÈ뽫¸Õ¸ÕÏÂÔØ²¢½âѹµÄPhoneGap°üÀïAnroidĿ¼£¬ÎÒÃÇÐèÒªµÄ×ÊÔ´¶¼ÔÚÕâ¸öĿ¼Ï¡£

½«phonegap-x.x.x.jsÕâ¸öjsÎļþ(¾ßÌåÃû³ÆÊÓµ±Ê±ÏÂÔØµÄ°æ±¾¶ø¶¨)copyµ½/assets/wwwĿ¼ÏÂ,

°Ñphonegap.jarÎļþcopyµ½/libsĿ¼Ï¡£

ÔÙ°ÑxmlĿ¼copyµ½androidÏîÄ¿µÄresĿ¼Ï¡£

4.ÔÚ/assets/wwwϽ¨Á¢index.htmlÎļþ£¬ÄÚÈÝ¿´ÆðÀ´ÏñÕâÑù£º

<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="phonegap-x.x.x.js"></script>
</head>
<body>
<h1>Hello World</h1>
</body>
</html>

5.½«ÒÔÏÂȨÏÞÅäÖõÄxmlÄÚÈÝcopyµ½AndroidManifest.xmlÎļþÖУº

<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.VIBRATE" />
<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.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" />

6.½«ÒÔÏÂÄÚÈÝÌí¼Óµ½AndroidManifest.xmlÎļþµÄactivity±êÇ©ÖÐ:

android:configChanges="orientation|keyboardHidden

7.AndroidManifest.xml×îºó¿´ÆðÀ´»áÏñÕâÑù£º

8.ÔÚ¸Õ¸Õн¨µÄAndroid ProjectÖÐÕÒµ½libsĿ¼²¢ÔÚphonegap-x.x.x.jarÉϵã»÷ÓÒ¼ü£¬Ñ¡Ôñ Build Path->Add to Build Path

9.×îºóÔÙÐÞ¸ÄÏÂsrcϵÄJavaÖ÷Îļþ£º

1)Ìí¼Óimport com.phonegap.*;

2)½«Àà¸Ä³É¼Ì³ÐΪDroidGap;

3)ɾµôimport android.app.Activity;

4)°ÑsetContentView()ÕâÐÐÌæ»»Îªsuper.loadUrl("file:///android_asset/www/index.html");

5)×îºó¿´ÆðÀ´¾ÍÏñÕâÑù£º

È»ºó¾Í¿ÉÒÔÊÔ×ÅÔËÐÐһϣ¬³É¹¦µÄ»°»á³öÏÖHello WorldµÄ½çÃæ¡£

Èý¡¢PhoneGap Plugin

PhoneGapµÄ²å¼þ»úÖÆÆäʵ¾ÍÊÇÒ»¸öandroidÀർ³öΪjarÎļþ£¬È»ºóÔÙ±»PhoneGapµÄÏîÄ¿ÒýÓã¬ÔÙͨ¹ýjsÀ´µ÷API£º

1.´´½¨Ò»¸öAndroid Project;

2.´ò¿ªJavaÖ÷Îļþ£¬½«¼Ì³ÐµÄÀà¸ÄΪPlugin;

3.ÒýÈëÒÔÏÂÀࣺ

import com.phonegap.api.Plugin;	
import com.phonegap.api.PluginResult;
import com.phonegap.api.PluginResult.Status;

4.ÖØÐ´¸¸ÀàµÄexecute·½·¨£º

public PluginResult execute(String action, JSONArray data, String callbackId) {
PluginResult pr=null;
if(action.equals("method1")){
pr=new PluginResult(Status.IO_EXCEPTION,"method1");
}else if(action.equals("method2")){
pr=new PluginResult(Status.OK,"method2");
} return pr;
}

ÆäÖУ¬µÚÒ»¸ö²ÎÊýaction¿ÉÒÔ×÷Ϊ·ÖÀàµ÷ÓÃʱµÄÀàÐÍ£¬ÎÒÃǾͿÉÒÔÓøòÎÊýÀ´ÊµÏÖ¶à·½·¨¹¦ÄÜ¡£

·µ»ØµÄPluginResultʵÀý¿ÉÒÔͨ¹ý״̬StatusÀàÐ͵ĿØÖÆÀ´ÃèÊöµ±Ç°½á¹ûµÄÖ´ÐÐ״̬¡£

×îºó£¬´úÂë¿´ÆðÀ´¿ÉÄÜÏñÕâÑù£º

5.½«¸ÃÀർ³öΪjar(ÔÚÀàÎļþÉÏÓÒ¼ü->Export->JAR File)

6.»Øµ½Ö®Ç°´´½¨µÄPhoneGapÏîÄ¿ÖУ¬°´ÉÏÃæÌí¼Ójar°üµÄ·½·¨ÔÙ½«¸ÃjarÌí¼Óµ½¹¤³ÌÖС£

7.ÔÚ/res/xml/plugins.xmlÎļþÖÐÌí¼ÓÒÔÏÂÄÚÈÝ£º

<plugin name="PluginTest"  value="aralork.moblie.plugin.PluginTest"/>

nameÊÇÄãÔÚµ÷ÓÃʱҪʹÓõÄÀàÃû£¬valueÊÇÀàÔÚjar°üÖеÄȫ·¾¶

8.×îºóÔÙ´ò¿ªassets/www/index.htmlÎļþ£¬Ð´ÈëÀàËÆÓÚÕâÑùµÄÄÚÈÝ£º

<script type="text/javascript" charset="utf-8" src="phonegap-x.x.x.js"></script>
<script type="text/javascript">
PhoneGap.exec(successCallback, //³É¹¦ºóµÄ»Øµ÷·½·¨
failureCallback, //ʧ°ÜºóµÄ»Øµ÷·½·¨
'PluginTest',//¸Õ²ÅÅäÖõÄÀàÃû
'method1', //·½·¨Ãû³Æ£¬¾ÍÊÇ֮ǰÌáµ½µÄaction²ÎÊý
["/sdcard"]); //sdcard·¾¶
function successCallback(data){
alert("data:"+data);
}
function failureCallback(data){
alert("error:"+data);
}
</script>

ÈËÆ·Ã»ÎÊÌâµÄ»°£¬ÕâÑù¾ÍÄÜrunÆðÀ´ÁË¡£¡£¡£¡£¡£¡£¡£

   
2100 ´Îä¯ÀÀ       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ÄÚºËÇý¶¯
°¬Ä¬Éú ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ
Î÷ÃÅ×Ó Ç¶Èëʽ¼Ü¹¹Éè¼Æ