Android:PhoneGap入门

本文介绍如何使用PhoneGap搭建开发环境并创建一个简单的HTML5应用。PhoneGap是一个跨平台的移动应用开发框架,允许开发者利用HTML5、CSS和JavaScript等Web技术来构建原生应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PhoneGap是一能够让你用普通的web技术编写出能够轻松调用API接口和进入应用商店的HTML5应用开发平台。是唯一的一个支持7个平台的开源移动框架。它的优势是无以伦比的:开发成本低——据估算,至多Native App的五分之一!

  • 兼容性:完全做到了Written Once,Run Everywhere!
  • 标准化,PhoneGap采用W3C标准,Web App直接运行!
  • 用JavaScript+HTM5。和iOS以及android的代码加XML没区别!
  • 大众化移动互联网开发平台 了解更多
    • 轻量级架构,功能卓越的手机应用快速开发平台
    • 精确兼容系统 Andriod iPhone&iPad Symbain WM
    • 无成本开发,20%的开发周期,20%的升级维护成本
    • 完全不需要手机编程基础,只要会HTML就能做应用

 

一、PhoneGap环境配置

    1、打开Eclipse,新建一个Android项目。

    2、如果没有/libs目录,则创建,另外,创建一个/assets/www目录。

    3、从刚才下载的PhoneGap中复制phonegap.js 到/assets/www目录;

        从刚才下载的PhoneGap中复制phonegap.jar 到/libs目录;

        从刚才下载的PhoneGap中复制xml文到夹到/res 目录。

    4、对Eclipse的src文件夹中的主Java文件进行少量调整:

        将class的继承类由Activity 改为DroidGap;

        将 setContentView() 这一行替换为super.loadUrl(file:///android_asset/www/index.html);

        添加 import com.phonegap.*;

        移除import android.app.Activity;

 

注:

在这里你可能会遇到Eclipse找不到phonegap-1.0.0.jar的错误。在这种情况下,右键单击/libs文件夹找到Build Paths/ > Configure Build Paths。然后在Libraries标签页中添加phonegap-1.0.0.jar到项目中。如果Eclipse不是很稳定,你需要点击F5刷新一次项目。

5、给Manifest文件添加说明和权限:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<? xml version = "1.0" encoding = "utf-8" ?>
 
< manifest xmlns:android = "http://schemas.android.com/apk/res/android" android:windowSoftInputMode = "adjustPan"
       package = "org.apache.cordova.example" android:versionName = "1.0" android:versionCode = "1" android:hardwareAccelerated = "true" >
     < supports-screens
         android:largeScreens = "true"
         android:normalScreens = "true"
         android:smallScreens = "true"
         android:xlargeScreens = "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.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:icon = "@drawable/icon" android:label = "@string/app_name"
         android:hardwareAccelerated = "true"
         android:debuggable = "true" >
         < activity android:name = "example" android:label = "@string/app_name"
                 android:theme = "@android:style/Theme.Black.NoTitleBar"
                 android:configChanges = "orientation|keyboardHidden|keyboard|screenSize|locale" >
             < 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 >

 

二、编写Hello World代码

1、在 “/assets/www”目录中新建文件index.html。

2、index.html的代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<! DOCTYPE html>
< html >
     < head >
         < meta charset = "utf-8" />
         < meta name = "format-detection" content = "telephone=no" />
         < meta name = "viewport" content = "user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />
         < link rel = "stylesheet" type = "text/css" href = "css/index.css" />
         < title >Hello World</ title >
     </ head >
     < body >
         < div class = "app" >
             < h1 >Apache Cordova</ h1 >
             < div id = "deviceready" class = "blink" >
                 < p class = "event listening" >Connecting to Device</ p >
                 < p class = "event received" >Device is Ready</ p >
             </ div >
         </ div >
         < script type = "text/javascript" src = "cordova.js" ></ script >
         < script type = "text/javascript" src = "js/index.js" ></ script >
         < script type = "text/javascript" >
             app.initialize();
         </ script >
     </ body >
</ html >

 

三、项目完整图

内容概要:本文详细介绍了扫描单分子定位显微镜(scanSMLM)技术及其在三维超分辨体积成像中的应用。scanSMLM通过电调透镜(ETL)实现快速轴向扫描,结合4f检测系统将不同焦平面的荧光信号聚焦到固定成像面,从而实现快速、大视场的三维超分辨成像。文章不仅涵盖了系统硬件的设计与实现,还提供了详细的软件代码实现,包括ETL控制、3D样本模拟、体积扫描、单分子定位、3D重建和分子聚类分析等功能。此外,文章还比较了循环扫描与常规扫描模式,展示了前者在光漂白效应上的优势,并通过荧光珠校准、肌动蛋白丝、线粒体网络和流感A病毒血凝素(HA)蛋白聚类的三维成像实验,验证了系统的性能和应用潜力。最后,文章深入探讨了HA蛋白聚类与病毒感染的关系,模拟了24小时内HA聚类的动态变化,提供了从分子到细胞尺度的多尺度分析能力。 适合人群:具备生物学、物理学或工程学背景,对超分辨显微成像技术感兴趣的科研人员,尤其是从事细胞生物学、病毒学或光学成像研究的科学家和技术人员。 使用场景及目标:①理解和掌握scanSMLM技术的工作原理及其在三维超分辨成像中的应用;②学习如何通过Python代码实现完整的scanSMLM系统,包括硬件控制、图像采集、3D重建和数据分析;③应用于单分子水平研究细胞内结构和动态过程,如病毒入侵机制、蛋白质聚类等。 其他说明:本文提供的代码不仅实现了scanSMLM系统的完整工作流程,还涵盖了多种超分辨成像技术的模拟和比较,如STED、GSDIM等。此外,文章还强调了系统在硬件改动小、成像速度快等方面的优势,为研究人员提供了从理论到实践的全面指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值