Android + Eclipse + PhoneGap 2.9.0 安卓最新环境配置,部分资料整合网上资料,已成功安装.

前言:最近心血来潮做了一个以品牌为中心的网站,打算推出本地服务o2o应用。快速开发手机应用,最后选择了phonegap,这里我只是讲述我安装的过程,仅供大家参考。

我开发的一个模型http://www.w30.cn 可以看下。看看有多差。

如果有什么问题也可以到小组留言,可以的话,贡献一个ip:)

phonegap小组 http://www.w30.cn/group/4

如果有什么问题也可以加入我们的QQ群:64674997

ok 不多说了,下面是我的安装过程

环境搭建首先要去下载一些安装包:

(下载前注意一下,电脑是32位还是64位的请注意选择安装包)

java环境的JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html

我安装的是64位,下载自己系统环境需要的版本,下载后默认安装,完成后 在 开始 - 输入cmd- 输入java 显示出java版本信息表示安装已经成功

 

接着安装

一、下载安装ADT。http://developer.android.com/sdk/index.html

 

二、Android的压缩包为:adt-bundle-windows-x86_64。

  解压后,进入eclipse目录,运行eclipse.exe。

1)先更新Android包:选择 Window -------->Android SDK Manager

全部勾选后,点击 Install packages,将所有包全部打上。

 

 

2)配置AVD环境

配置该环境有两种方法:

1、使用界面进行配置,进入方式如图所示:

 

打开之后,如图所示,点击New新建。

 

三、配置PhoneGap(这个比较麻烦)

1)先新建一个新的工程。

具体详细可以查看:

http://developer.android.com/intl/zh-CN/training/basics/firstapp/creating-project.html

打开ADT,新建一个安卓应用项目

输入名称,然后下一步

可以选择下项目位置,我的是默认的。

这里可以选择图标。

选择第一个

这个时候,一个安卓项目就建好了。

phonegap下载地址:http://phonegap.com/install/

将PhoneGap目录下的android目录下的jar文件拷贝到项目的libs目录下

 

将xml目录拷贝到项目的res目录下

 

在assetc目录下,建立一个www目录,下面放html内容。为了偷懒,我把phonegap例子里面的内容拷贝过来了。

 

修改Java代码:

?
package  com.myexample.helloworld;
 
import  android.os.Bundle;
import  org.apache.cordova.*;
 
public  class  MainActivity extends  DroidGap
{
     @Override
     public  void  onCreate(Bundle savedInstanceState)
     {
         super .onCreate(savedInstanceState);
         // Set by <content src="index.html" /> in config.xml
         super .loadUrl(Config.getStartUrl());
         //super.loadUrl("file:///android_asset/www/index.html")
     }
}
 
/*
  * 下面是adt生成的代码,注释掉
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
 
public class MainActivity extends Activity {
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_main);
     }
 
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
         // Inflate the menu; this adds items to the action bar if it is present.
         getMenuInflater().inflate(R.menu.main, menu);
         return true;
     }
 
}*/

 修改一下项目根目录下的AndroidManifest.xml和res/xml目录下的config.xml文件
AndroidManifest.xml

?
<?xml version= "1.0"  encoding= "utf-8" ?>
<!--
        Licensed to the Apache Software Foundation (ASF) under one
        or more contributor license agreements.  See the NOTICE file
        distributed with this  work for  additional information
        regarding copyright ownership.  The ASF licenses this  file
        to you under the Apache License, Version 2.0  (the
        "License" ); you may not use this  file except in compliance
        with the License.  You may obtain a copy of the License at
 
          http: //www.apache.org/licenses/LICENSE-2.0
 
        Unless required by applicable law or agreed to in writing,
        software distributed under the License is distributed on an
        "AS IS"  BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
        KIND, either express or implied.  See the License for  the
        specific language governing permissions and limitations
        under the License.
 
-->
<manifest xmlns:android= "http://schemas.android.com/apk/res/android"
     package = "com.myexample.helloworld"
     android:hardwareAccelerated= "true"
     android:versionCode= "1"
     android:versionName= "1.0"
     android:windowSoftInputMode= "adjustPan"  >
 
     <supports-screens
         android:anyDensity= "true"
         android:largeScreens= "true"
         android:normalScreens= "true"
         android:resizeable= "true"
         android:smallScreens= "true"
         android:xlargeScreens= "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.INTERNET"  />
     <uses-permission android:name= "android.permission.RECEIVE_SMS"  />
     <uses-permission android:name= "android.permission.RECORD_AUDIO"  />
     <uses-permission android:name= "android.permission.RECORD_VIDEO"  />
     <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"  />
     <uses-permission android:name= "android.permission.BROADCAST_STICKY"  />
 
     <application
         android:debuggable= "true"
         android:hardwareAccelerated= "true"
         android:icon= "@drawable/ic_launcher"
         android:label= "@string/app_name"  >
         <activity
             android:name= "com.myexample.helloworld.MainActivity"
             android:configChanges= "orientation|keyboardHidden|keyboard|screenSize|locale"
             android:label= "@string/app_name"
             android:theme= "@android:style/Theme.Black.NoTitleBar"  >
             <intent-filter>
                 <action android:name= "android.intent.action.MAIN"  />
 
                 <category android:name= "android.intent.category.LAUNCHER"  />
             </intent-filter>
         </activity>
     </application>
 
     <uses-sdk
         android:minSdkVersion= "7"
         android:targetSdkVersion= "17"  />
 
</manifest>

 config.xml

?
<?xml version= "1.0"  encoding= "UTF-8" ?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this  work for  additional information
  regarding copyright ownership.  The ASF licenses this  file
  to you under the Apache License, Version 2.0  (the
  "License" ); you may not use this  file except in compliance
  with the License.  You may obtain a copy of the License at
 
  http: //www.apache.org/licenses/LICENSE-2.0
 
  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS"  BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for  the
  specific language governing permissions and limitations
  under the License.
-->
<widget
     id= "com.myexample.helloworld"
     version= "2.0.0"
     xmlns= "http://www.w3.org/ns/widgets"  >
 
     <name>
helloworld
     </name>
 
     <description>
         A sample Apache Cordova application that responds to the deviceready event.
     </description>
 
     <author
         email= "dev@cordova.apache.org"
         href= "http://cordova.io"  >
         Apache Cordova Team
     </author>
 
     <access origin= "*"  />
 
     <!-- <content src= "http://mysite.com/myapp.html"  /> for  external pages -->
     <content src= "index.html"  />
 
     <preference
         name= "loglevel"
         value= "DEBUG"  />
     <!--
       <preference name= "splashscreen"  value= "resourceName"  />
       <preference name= "backgroundColor"  value= "0xFFF"  />
       <preference name= "loadUrlTimeoutValue"  value= "20000"  />
       <preference name= "InAppBrowserStorageEnabled"  value= "true"  />
       <preference name= "disallowOverscroll"  value= "true"  />
     -->
 
     <feature name= "App"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.App"  />
     </feature>
     <feature name= "Geolocation"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.GeoBroker"  />
     </feature>
     <feature name= "Device"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Device"  />
     </feature>
     <feature name= "Accelerometer"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.AccelListener"  />
     </feature>
     <feature name= "Compass"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.CompassListener"  />
     </feature>
     <feature name= "Media"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.AudioHandler"  />
     </feature>
     <feature name= "Camera"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.CameraLauncher"  />
     </feature>
     <feature name= "Contacts"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.ContactManager"  />
     </feature>
     <feature name= "File"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.FileUtils"  />
     </feature>
     <feature name= "NetworkStatus"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.NetworkManager"  />
     </feature>
     <feature name= "Notification"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Notification"  />
     </feature>
     <feature name= "Storage"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Storage"  />
     </feature>
     <feature name= "FileTransfer"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.FileTransfer"  />
     </feature>
     <feature name= "Capture"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Capture"  />
     </feature>
     <feature name= "Battery"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.BatteryListener"  />
     </feature>
     <feature name= "SplashScreen"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.SplashScreen"  />
     </feature>
     <feature name= "Echo"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Echo"  />
     </feature>
     <feature name= "Globalization"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.Globalization"  />
     </feature>
     <feature name= "InAppBrowser"  >
         <param
             name= "android-package"
             value= "org.apache.cordova.InAppBrowser"  />
     </feature>
     <!-- Deprecated plugins element. Remove in 3.0  -->
     <plugins>
     </plugins>
 
</widget>

 然后,就可以运行了

 

 

PhoneGap的官方方法不是这样的,是用命令行生成默认包的。但是要装好几个东西。具体可以看PhoneGap包里面的readme文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值