转眼间Windows 8.1已经发布了四个多月,之前因为开发需要对Windows 8.1新特性进行过零散的学习和使用,一直没有静下心来系统的学习过。近日部门有几名新同事加入,需要进行Windows 商店应用开发的培训,所以借这个机会,重新梳理一下Windows 8.1 应用开发的知识。闲言碎语不多讲,接下来开始第一站,创建第一个应用。

首先我们看一下开发环境要求:Windows 8.1 + Visual Studio 2013

紧接着我们新建一个Windows 8.1 商店应用的项目,起名为HelloWorld(好吧,这可能是用的最多的名字了吧),来观察一下项目的构成

  • Properties目录中的AssemblyInfo.cs文件控制程序集的常规信息,如程序集标题、描述、公司、版权和版本等;
  • 引用是大家都很熟悉的一个目录,我们对其他程序集的引用都会列在这里,我们可以添加引用或删除引用;
  • Assets目录存放的是应用图标和启动屏幕相关的图片文件;
  • App.xaml包含了应用所需的资源,App.xaml.cs为应用提供入口;
  • HelloWorld_TemporaryKey.pfx是应用的数字证书文件;
  • MainPage.xaml是应用启动后出现的第一个界面;
  • Package.appxmainfest是应用程序的清单文件,可以在文件中设置应用名称、图标、入口、功能等等。

接下来我们详细说明一下清单文件:

1. 应用程序

主要设置应用的名称、语言、支持旋转、支持的通知方式等属性。其中与Windows 8 较大的不同是可以设置最小宽度,Windows 8中处于Snapped状态的应用固定宽度为320px,而Windows 8.1 中用户可以通过拖拽改变Snapped状态应用的宽度,同时开发者可以设置最小宽度为320px、500px 或 默认值。

2. 可见资产

主要设置应用的各种图标和启动屏幕,所用图片都存放在前面提到的Assets目录中,与Windows 8较为不同的是可以设置应用的默认大小,还可以设置应用的310 * 310徽标。

3. 功能

主要指定应用可使用的系统功能,例如我们需要获取用户位置坐标,那我们需要勾选“位置”功能。

4. 声明

主要添加应用的可用声明,例如我们需要实现搜索协议,就要添加“搜索”声明,然后填写相关属性。

5. 内容 URI

主要添加可向应用程序发送ScriptNotify事件的HTTPS URI。因为Windows 8.1 中不支持 WebView 控件的 AllowedScriptNotifyUris、AnyScriptNotifyUri 和 AllowedScriptNotifyUrisProperty。所以允许引发ScriptNotify事件的URI都需要列在这里。

6. 打包

主要指定安装包的属性信息

然后我们对MainPage做一些修改,尝试调试应用程序。我们在页面中加入一个文本控件:

<Pagex:Class="HelloWorld.MainPage"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:local="using:HelloWorld"xmlns:d="http://schemas.microsoft.com/expression/blend/2008"xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"mc:Ignorable="d"><Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"><TextBlock Text="My First App, Hello World." HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="50"/></Grid>
</Page>

接下来我们就可以调试应用了,在调试之前,我们先来看看调试方法。Windows 商店应用的调试方法有:模拟器、本地计算机 和 远程计算机。模拟器和本地计算机,顾名思义,就是在本机启动模拟器调试和在本机调试,而远程计算机多用于在连接到本机的平板上调试时。这里我们选择在模拟器调试,运行效果如下图:

运行后,模拟器的应用界面中显示出我们添加的文本框。到这里我们的第一个应用的创建和调试就完成了,谢谢。

Windows 8.1 应用再出发 - 创建我的第一个应用相关推荐

  1. Windows 8.1 应用再出发 - 几种更新的控件

    Windows 8.1 除了新增了很多很有用的控件外,还对一些控件做出了更新.接下来我们一起对这些更新的控件一一做出讲解. 1. FlipView 更新 翻转视图控件,在应用中常用作图片等内容的翻页/ ...

  2. 大数据再出发-19Flink

    大数据再出发-19Flink 今天来一起学习一下flink,一个真正意义上的流处理框架,之前学的sparkstreaming那是个微批处理的框架,今天学的flink是基于事件的实时处理框架. 文章目录 ...

  3. 沉淀再出发:Spring的架构理解

    沉淀再出发:Spring的架构理解 一.前言 在Spring之前使用的EJB框架太庞大和重量级了,开发成本很高,由此spring应运而生.关于Spring,学过java的人基本上都会慢慢接触到,并且在 ...

  4. 沉淀再出发:PHP的中级内容

    沉淀再出发:PHP的中级内容 一.前言     前面我们介绍了PHP的简单的语法知识以及相关的用法,接下来我们将PHP+mysql以及PHP+ajax结合起来进行研究. 二.PHP+mysql     ...

  5. 沉淀再出发:关于java中的AQS理解

    沉淀再出发:关于java中的AQS理解 一.前言 在java中有很多锁结构都继承自AQS(AbstractQueuedSynchronizer)这个抽象类如果我们仔细了解可以发现AQS的作用是非常大的 ...

  6. 沉淀,再出发:docker的原理浅析

    沉淀,再出发:docker的原理浅析 一.前言 在我们使用docker的时候,很多情况下我们对于一些概念的理解是停留在名称和用法的地步,如果更进一步理解了docker的本质,我们的技术一定会有质的进步 ...

  7. python 去除panda安装包_沉淀,再出发:python中的pandas包

    沉淀,再出发:python中的pandas包 一.前言 python中有很多的包,正是因为这些包工具才使得python能够如此强大,无论是在数据处理还是在web开发,python都发挥着重要的作用,下 ...

  8. 如果你对自己有要求 | “回顾,再出发”——记2020软工提问回顾与个人总结

    回顾,再出发 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 提问回顾与个人总结 我在这个课程的目标是 完成一次完整的软件开发经历 并以博客的方式 ...

  9. Windows非法文件和目录的创建及删除方式

    目前遇到的windows非法文件和目录名主要有以下几种 1.带点的目录名 例子: d:/wwwroot/mysite/aaa.. 创建: md d:/wwwroot/mysite/aaa../ [wi ...

最新文章

  1. c语言归并排序代码详细注释,C语言实现排序算法之归并排序详解
  2. c25---条件编译
  3. for循环延时_RocketMQ进阶-延时消息
  4. tomcat启动占了12g_tomcat服务为何报内存相关错误??
  5. Python计算并可视化商品批发时商家收益和顾客节省情况
  6. vscode python 远程调试_vscode 远程调试python的方法
  7. python对数组缺失值进行填充
  8. mysql in memory_In-Memory:内存数据库
  9. 在C#中如何读写INI文件
  10. C#【必备技能篇】Win10 查看 DLL 中的函数
  11. MySQL经典练习50题
  12. 华为交换机路由器登陆密码详细操作
  13. 2021-03-27
  14. 18W快充长续航 魅族魅蓝Note5金色版19日开售
  15. 推荐一款看书学习必备的读书笔记app
  16. Python爬虫登录大学官网
  17. 企业如何搭建属于自己的协同办公管理系统?
  18. 批量合同生成软件/工具
  19. 建站百科|手把手教你如何申请网站空间
  20. win10系统暴雪战网连不上服务器,win10系统无法登录战网怎么办_win10战网登录不上去的解决方法...

热门文章

  1. perl 连接mysql_perl如何连接mysql数据库?
  2. mysql中日志的特点_mysqlbinlog的日志类型
  3. Reveal真机查看任意APP
  4. arg是什么函数_java后端开发三年!你还不了解Spring 依赖注入,凭什么给你涨薪...
  5. Redisson 分布式锁源码 11:Semaphore 和 CountDownLatch
  6. oracle取32位唯一码,Oracle导出导入dmp文件命令,以及excel生成32位uuid
  7. java接口如何定义常量 c_在Java接口中怎样访问定义的常量呢?
  8. PHPExcel 出现open_basedir restriction in effect的解决办法
  9. symfony 2 app.php,Symfony2安装的方法(2种方法)
  10. java约瑟夫环 循环链表_约瑟夫环_循环链表JAVA解答