Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 5089|回复: 8

[教程] Windows Store Apps 开发手札 – 1(开发流程) [复制链接]

此人已被屏蔽

UID
479441
帖子
1481
PB币
4371
贡献
0
技术
29
活跃
267

7周年庆典勋章 活动参与先锋 I'm Windows Phone用户 远景技术达人 应用界 远景智多星 8周年庆典勋章

发表于 2012-12-15 20:37:30 |显示全部楼层
本帖最后由 satanness 于 2013-1-5 15:06 编辑

第一篇文章写Windows Store App的开发流程。在熟悉流程之前,先做点准备工作。盗一张图先。

-开发架构-
  这张图就是Windows Store App的开发架构了。从底层来看,最后一层“核心层”,也就是MVC里的C,可以无视了,由Windows系统来完成。上层是“服务层”,主要是一些新的API,包括通讯(哎别提了,Socket都面目全非了),媒体(图片啊视频啊音频啊),设备等。再往上一层,就是M跟V了,可以看出来,有两条线路,一个是利用XAML加主流的几种开发语言,另一个是纯网页形式的。在Windows Store App中,微软给JavaScript起了个新的名字,叫“查克拉”(“我是要成为火影的男人~~”),意味着在界面逻辑上,JavaScript是挑大梁的。 既然我选择了C/C++这条不归路,那就继续走下去,不回头哇。
        
-开发环境-
操作系统肯定是Windows8,或者是与Windows8内核级别相同的Windows Server 2012。开发环境也得是最新的Visual Studio 11(也叫Visual Studio 2012)。当然你也可以用VS10 + Win8 SDK,但是总归没有新版本来得稳定和顺手。 不提供Win8跟VS11的下载了,网上好多好多,可以移步8区自行寻找。 所有的东西安装完成后,打开VS11。 界面变得Win8化了,没有3D感,整个界面都是平的,而且这次微软把开发界面默认全部搞成了暗色调,不知道是跟Adobe的软件们心有灵犀啊,还是肿么的。如下:


如果不喜,还可以在Tools – Options – Environment – General – Color Theme调回来。
废话少说,开始利用最经典的HelloWorld来熟悉一下开发流程。

-------------------------------------------------------
这儿传图麻烦,下面的具体步骤,请移步我的博客。
有什么问题,可以及时提出来讨论解决。
向大家道歉,写到一半就“移步我的博客”是很不负责任的行为,我来继续把文章的下半部分写出来吧。
-------------------------------------------------------

-本地开发-
File – New – Project – Windows Store – Blank App(XAML),然后输入工程的名字,点击OK。

在第一次创建Windows Store App的时候,VS会要求你获取Windows8 开发者许可证,只需要按照它的流程,一步步走下去就行, 不需要掏钱,这个跟应用商店开发者许可证是不一样的。这个许可证每一个月要续订一次,也不麻烦。 先不要管App.xaml.cpp中的一堆namespace,让我们来实现最简单的功能来完成这次流程实验。 双击左边的MainPage.xaml,会打开设计器界面,读取可能会花点时间,因机器而异。然后点开右边的Toolbox,拖一个Button上去。然后在下面的代码栏里,修改一下Button的属性。如下:
  1. <Button Content="Press Me!" HorizontalAlignment="Center" VerticalAlignment="Center" Height="71" Width="142"/>
复制代码
然后选中这个按钮,在右边Properties属性面板里,点击“事件”按钮,加入单击事件OnBtnClick(这儿跟MFC下的开发是差不多的,区别日后再说),如图所示:

输入完OnBtnClick后,按下回车,IDE会自动把你引向OnBtnClick事件的编写处。在函数中添加如下代码:
  1. Windows::UI::Popups::MessageDialog^ dialog = ref new Windows::UI::Popups::MessageDialog("Hello World!");
  2. dialog->ShowAsync();
复制代码
好,接下来是编译跟运行。因为Windows8可以运行在平板上,所以这次VS11里还集成了一个模拟器,模拟平板的运行效果。那么我们可以选择让程序运行在本机,也可以选择运行在平板,选项如下:

我们先选择Simulator吧,方便截图,也可以看看运行的样子。

这个启动画面好丑啊,默认就是这个样的,一会我们来修改一下。

好。接下来是最后一步。

-打包上传-
写出来的程序不一定就在本地用啊,我可能会上传到商店让别人用,也可能会放到别的机器上用。打包程序可以帮你解决这个问题。 在工程上单击右键 – Store – Create App Packages…,

就会进入打包界面。

这第一个界面,是在问你,要不要把包包上传到商店,如果要的话,就会询问你的商店开发者账号,这儿我选择No,然后Next。

由上至下,分别是:打包后Appx程序的输出位置;版本号(可以选择是否自动递增);平台选择(包括Debug / Release模式选择);是否引入符号文件,为程序崩溃时提供一些分析帮助。因为我就想在本机上运行一下,所以直接点击Create。以后的会有把程序传到Surface RT上运行的文章。

成功老。因为刚才我已经运行过一次程序,所以实际上程序已经安装在我的电脑上了,我先去把这东西给卸载掉。按Windows键,找到那个大叉子图标,右键,卸载。 进入最后一个页面提示的目录,进入到HelloWorld_XXX_Debug目录,会有下面几个文件。

我们在Add-AppDevPackages.ps1上点击右键,然后选择使用PowerShell运行。
这儿戳两句,最近流行的win8“越狱”有点类似这种机制哦

就会进入另外一番界面。

提示你安装证书,那就按Enter键吧。

这儿千万别手滑按回车,因为Windows默认证书是不保证安全的,所以按下回车就取消了。要输入“y”,再按回车。

安装过程,很好玩。最后再按一下回车,安装过程就结束了。现在再按Windows键,到开始菜单里,就能发现我们的程序了!


-图标修改-
刚才说了,启动界面难看,这图标也死难看。我们来换掉它。 找到工程所在目录,进入Assets文件夹,我们能看到几个PNG文件。

我把它们选中了,这样能看清楚一点。替换方法灰常简单,就用相同大小的PNG图片替换一下就可以了,当然名字也要一样。我就用其他工程里的图片来替换了。
替换完成之后,我们要重新编译一下工程。 再看看效果。

好,整个流程就是这样了,后面无论多么复杂的开发,基本都是按照这个流程来走的。下一篇讲点关于C++/CX的事情。


我的博客地址:http://www.cy198706.com  转载的话,还是通知我一声吧。


Rank: 5Rank: 5Rank: 5

UID
987864
帖子
513
PB币
1060
贡献
0
技术
1
活跃
581
发表于 2013-1-18 21:49:35 |显示全部楼层
谢谢讲解!!!!!!!!!!!!

Rank: 1

UID
2080993
帖子
100
PB币
885
贡献
0
技术
0
活跃
40
发表于 2013-1-20 22:00:26 |显示全部楼层
楼主是高手!
头像被屏蔽

小孩嘎嘎牛

UID
191395
帖子
474
PB币
1454
贡献
0
技术
4
活跃
362
发表于 2013-1-21 12:54:17 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 1

UID
4766590
帖子
1
PB币
1
贡献
0
技术
0
活跃
7
发表于 2015-12-6 22:55:24 |显示全部楼层
技术贴,一定要支持

Rank: 9

UID
1477018
帖子
3361
PB币
29
贡献
0
技术
0
活跃
2364
发表于 2016-2-11 18:24:11 |显示全部楼层
感谢分享
头像被屏蔽

UID
4803755
帖子
203
PB币
214
贡献
0
技术
0
活跃
74
发表于 2016-5-10 01:01:46 |显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

Rank: 2Rank: 2

UID
2416587
帖子
51
PB币
47
贡献
0
技术
0
活跃
51
发表于 2016-7-7 10:32:53 |显示全部楼层
技术贴,我支持。明了很多!

Rank: 2Rank: 2

UID
4784208
帖子
227
PB币
124
贡献
0
技术
0
活跃
416

Win10先驱者

发表于 2016-7-25 01:01:06 来自手机 |显示全部楼层
图片都是清一色的
回顶部
Copyright (C) 2005-2020 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件