现在使用Html+Css+Js制作移动应用是越来越火,所以在此记录下我个人使用DCloud+Framework7进行移动APP开发过程,方便以后查阅。
一、准备:
环境:Win7 64位
开发工具:HBuilder(下载地址:http://www.dcloud.io/ )
设计到的原型工具:
DCloud(地址:http://www.html5plus.org/doc/zh_cn/accelerometer.html )
Framework7(中文地址:http://framework7.taobao.org 英文地址:http://www.idangero.us/framework7 )
二、进行开发:
1、打开HBuilder,建议一个HelloWorld的空模板移动应用
2、下载Framwork7,解压,将dist文件夹拷贝到项目中,并重命名为Framework7,然后我们的项目文件大概为这样:
注:一下操作流程大多数是对Framework7的使用,可以参考(http://framework7.taobao.org/get-started)
3、修改你的index.html文件,编写你的主文件,代码如下:(这段代码来自于Framework7的基本IOS样式,进行了简单文字修改)
<!DOCTYPE html>
<html>
<head>
<!-- Required meta tags-->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, minimal-ui">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- Your app title -->
<title>Hello World</title>
<!-- Path to Framework7 Library CSS, iOS Theme -->
<link rel="stylesheet" href="Framework7/css/framework7.ios.min.css">
<!-- Path to Framework7 color related styles, iOS Theme -->
<link rel="stylesheet" href="Framework7/css/framework7.ios.colors.min.css">
<!-- Path to your custom app styles-->
<link rel="stylesheet" href="css/my-app.css">
</head>
<body>
<!-- Status bar overlay for full screen mode (PhoneGap) -->
<div class="statusbar-overlay"></div>
<!-- Views -->
<div class="views">
<!-- Your main view, should have "view-main" class -->
<div class="view view-main">
<!-- Top Navbar-->
<div class="navbar">
<div class="navbar-inner">
<!-- We need cool sliding animation on title element, so we have additional "sliding" class -->
<div class="center sliding">Hello World</div>
</div>
</div>
<!-- Pages container, because we use fixed-through navbar and toolbar, it has additional appropriate classes-->
<div class="pages navbar-through toolbar-through">
<!-- Page, "data-page" contains page name -->
<div data-page="index" class="page">
<!-- Scrollable page content -->
<div class="page-content">
<p>这是首页,你可以在打开的时候就看到我了</p>
<!-- Link to another page -->
<a href="about.html">关于我</a>
</div>
</div>
</div>
<!-- Bottom Toolbar-->
<div class="toolbar">
<div class="toolbar-inner">
<!-- Toolbar links -->
<a href="#" class="link">链接1</a>
<a href="#" class="link">链接2</a>
</div>
</div>
</div>
</div>
<!-- Path to Framework7 Library JS-->
<script type="text/javascript" src="Framework7/js/framework7.min.js"></script>
<!-- Path to your app js-->
<script type="text/javascript" src="js/my-app.js"></script>
</body>
</html>
你也需要添加必须要的css/my-app.css和js/my-app.js文件
4、在index.html上右键--》运行--》web应用程序进行调试(或者点击编辑器上面的运行调试,或者使用真机调试都可以,这里不一 一 讲解),效果如下:
5、大概有个效果样子了,现在我们来添加一个新页面功能:关于我
①编辑js/my-app.js文件
// 初始化APP
var myApp = new Framework7();
// If we need to use custom DOM library, let‘s save it to $$ variable:
var $$ = Framework7.$;
// Add view
var mainView = myApp.addView(‘.view-main‘, {
// Because we want to use dynamic navbar, we need to enable it for this view:
dynamicNavbar: true
});
②、在根目录添加一个about.html的页面
<!-- We don‘t need full layout in this file because this page will be parsed with Ajax. It is just enough to put here .navbar and .page-->
<!-- Top Navbar-->
<div class="navbar">
<div class="navbar-inner">
<div class="left">
<a href="#" class="back link">
<i class="icon icon-back-blue"></i>
<span>返回</span>
</a>
</div>
<div class="center sliding">关于我</div>
<div class="right">
<a href="#" class="link icon-only open-panel"><i class="icon icon-bars-blue"></i></a>
</div>
</div>
</div>
<div class="pages">
<div data-page="about" class="page">
<div class="page-content">
<div class="content-block">
<p>关于我</p>
<p>这是Hello World项目的一个关于我的页面,你是通过首页的关于我链接打开的。</p>
<p>这个项目是一个基础演示项目,使用DCloud+Framework7进行开发。</p>
</div>
</div>
</div>
</div>
③、给我们的about页面添加一个必要的ajax引导,编辑my-app.js,增加如下内容:
$$(document).on(‘pageInit‘, ‘.page[data-page="about"]‘, function(e) {
//这里你可以做很多事情
});
④、修改我们的index.html文件,在需要点击打开关于我们的页面添加链接:
<div class="page-content">
<p>这是首页,你可以在打开的时候就看到我了</p>
<!-- Link to another page -->
<a href="about.html">关于我</a>
</div>
⑤、像第4步一样运行一下,点击“关于我”就可以得出如下效果:
6、一个演示APP基础制作就完成了,可是现在还不是APP,想要弄到安卓(或者IOS)上面运行,就需要进行打包
PS:真机测试就像使用APP样,如果只是简单学习,可以真机演示
下面进行打包:
①、点击HBuilder编辑器上面的 运行--》打包APP,根据你的机型进行打包
②、打包完成后会生成一个APP,将APP拷贝到你的手机中进行安装即可
7、这样,一个简单的APP就制作完成了
三、附件
1、演示代码没有进行GIT托管,请通过http://pan.baidu.com/s/1ukwV0下载
2、如果要进行更加丰富的APP开发,你需要学习Framework7和Dcloud的Html5+,官方网站都有丰富的文档,认真阅读,开发一个普通APP不是问题。
3、Framework的替代产品:mui、jquery mobile、其他UI框架等
4、DCloud的替代产品:APICloud,PhoneGap,AppCan等
5、APP演示:
电影APP:http://topmovie.bmob.cn/
四、写在最后
不知道未来的Html+Js会是什么样子,希望会更好。
如果文章中有任何BUG或者问题可以提出交流,非常谢谢!