`
siweidashu
  • 浏览: 9140 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

WIN8学习日记1

阅读更多
Win8商店应用程序(Windows Store apps)开发,有如下方式:

1:Javascript + Html5

2:C#/C++/VB + XAML

我选择Javascript来开发,理由是对其他语言不熟悉。

首先创建一个默认的空白app

会产生几个默认文件:

1:default.html //这个是起始页面

2:default.js //default.html中加载了这个js,所以在程序执行显示起始页面时会加载和执行这个js

var app = WinJS.Application;
app.onactivated = function (eventObject) {
    if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) {
        if (eventObject.detail.previousExecutionState !== Windows.ApplicationModel.Activation.ApplicationExecutionState.terminated) {
            //这里代表你第一次执行次程序.
        } else {
            //这里代表重新回到此程序
        }
        WinJS.UI.processAll();
    }
};
app.oncheckpoint = function (eventObject) {
    // 程序挂起
};
app.start();


app.onactivated在程序开始或状态被激活时会触发,可以在这里执行一些初始化操作。而app.oncheckpoint则是在程序即将被挂起时会触发,可以在这里保存当前运行中的程序状态和数据,以便在下次触发运行时恢复。

WinJS.UI.processAll函数主要是用来执行UI框架中的一些初始化和事件绑定。



Win8 Metro Style App生命周期有三个状态,分别为:Active(在前端)、suspend(到后端)、resume(回到前端),是一个循环的过程。没有退出,会一直保持在线。



在windows 8中,程序会由于使用者的切换或者系统进入低功耗状态而被挂起(suspended),当程序被挂起时,它仍旧驻留在内存中,当用户resuming时会被快速激活恢复running状态。但是,系统也可能因为需要释放内存或者节约电量而终止某些被挂起的程序。并且,系统只会在挂起程序时通过事件通知程序,而不会在终止程序时通知。所以如果你忽略这种情况,很可能程序会经常莫名其妙就down掉。
那么,怎么解决呢?
无疑我们需要在系统通知程序被挂起时,就要保存当前程序的执行状态(上下文)以及用户数据,以便于在程序被系统强行终止后用户重启时还能恢复挂起前的状态。系统提供了Windows.Storage.ApplicationData来帮助我们持久化保存数据,代码如下:

var appData = Windows.Storage.ApplicationData.current;
var localSettings = appData.localSettings;        
localSettings.values["state"] = currentState;


另外,系统还提供WinJS.Application.sessionState来保存session数据(程序终止后会被清空)
分享到:
评论

相关推荐

    WINDOWS vista 日记本

    这个软件提供了一个方便的方式来记录日常生活、工作、学习中的点滴,支持文本编辑、日期标记,甚至可以添加图片,使得日记内容更加丰富多彩。虽然在后续的Windows版本中被Windows Journal取代,但仍有用户对Windows ...

    日记本vc源代码

    1. **文本编辑**:源代码中会包含一个或多个`CEdit`控件,用于用户输入日记内容。这些控件会与事件处理函数关联,实现文本的录入、修改、删除等操作。 2. **文件操作**:为了保存和读取日记,程序需要实现文件I/O...

    Mybase-Desktop-Ver820b10-Win64

    1. **自由格式资料管理**:Mybase允许用户以非结构化的方式存储信息,这意味着你可以根据个人需求灵活地组织数据,不受预设的数据模型限制。无论是文本、图片、链接还是其他格式的附件,都能轻松整合到一个数据库中...

    用自己的视频调用FlowNet2.0+Pytorch版本(小白日记win10)

    - `correlation_cuda-0.0.0-cp39-cp39-win_amd64.whl`、`resample2d_cuda-0.0.0-cp39-cp39-win_amd64.whl`、`channelnorm_cuda-0.0.0-cp39-cp39-win_amd64.whl`这三个文件可能是编译好的C++扩展,用于加速光流计算...

    VB日记本工程源代码

    总结来说,这个【VB日记本工程源代码】是一个涵盖数据库管理、用户界面设计、文件操作和安全加密的综合性VB学习资源。它不仅适合初级开发者入门,也对有经验的程序员有参考价值,因为源代码中包含了许多实际应用中的...

    Win32DiskImager-0.9.5-binary.zip

    1. **跨平台兼容**:尽管名称中包含“Win32”,但该工具不仅限于Windows平台,通过 Wine 运行环境,也能在Linux和macOS上使用。 2. **直观操作**:用户只需选择相应的映像文件和目标设备,点击“Write”按钮即可...

    win7 的一些快捷键

    ##### 8. “画图”程序的快捷键 - **撤销**: `Ctrl + Z` - **重做**: `Ctrl + Y` - **颜色交换**: `X` - **选择工具**: `S` - **橡皮擦**: `E` ##### 9. “写字板”的快捷键 - **字体**: `Ctrl + Shift + F` - **...

    xournal-0.4.8.2016-win32.zip

    Xournal是一款专为Windows系统设计的开源手写笔记应用,其0.4.8.2016版本的安装包以"xournal-0.4.8.2016-win32.zip"的形式提供。这个压缩包包含了运行Xournal所需的一系列动态链接库(DLL)文件,使得用户可以在电脑...

    Win7预装版笔记本 60后不会用咋办.docx

    #### 知识点1:Win7预装版笔记本的普及情况 - **销量数据**:Windows 7自推出以来已经销售了超过4.5亿个许可。 - **价格信息**:购买一套正版的Win7家庭普通版需要花费399元人民币。 #### 知识点2:Win7预装版...

    学树莓派笔记

    1. **需要的软件**:在开始装机前,你需要准备Raspberry Pi的官方操作系统镜像,如Raspbian,以及一个用来烧写镜像的工具,如Etcher或Win32 Disk Imager。 2. **格式化U盘**:为了将树莓派的系统写入U盘,首先需要...

    tensorflow-2.6.0-cp39-cp39-win-amd64.whl

    机器学习

    Mybase-Desktop-Ver800b2-Win64.zip

    1. **信息管理**:Mybase的核心功能是帮助用户组织各种信息,如笔记、日记、待办事项、项目计划等,通过层次化的数据库结构来实现。 2. **数据结构**:Mybase采用大纲视图和自由树形结构,用户可以自由调整信息节点...

    让Win7日记本编写数学公式.docx

    ### 使用Win7日记本编写数学公式 #### 一、引言 随着信息技术的发展,计算机不仅在日常生活中的应用越来越广泛,也在教育与科研领域扮演着重要角色。特别是在处理数学公式方面,传统的文字处理软件如Microsoft Word...

    win操作系统PPT教学课件.pptx

    * 截图工具,便笺, Windows® 日记本 * Windows® Sideshow (辅助显示) * Windows XP 模式:在 Windows 7 上无缝运行许多在 Windows XP 上运行的应用程序 * 位置感知打印 * 加入域和组策略控制 * 远程桌面主机 * ...

    Turbo C/C++ for Windows 集成实验与学习环境 7.0

    课程设计指导、课程设计源程序等,同时还有2001年到2005年二级C语言的全部真题笔试试卷及答案与分析和10套全真上机模拟试题和详尽的答案与分析,“编程日记”功能可以让你记录你的C语言学习历程,“资料管理”功能让...

    Turbo C/C for Windows 集成实验与学习环境 V2007.5

    Turbo C/C for Windows 集成实验与学习环境是从事一线教学的大学教师根据 C 语言初学者的特点,量身定制的一个... “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找

    python爬虫-爬虫项目实战之爬取豆瓣有关张国荣日记.zip

    通过这个爬虫项目,不仅可以学习到Python爬虫的基本操作,还能了解到如何处理常见的爬虫问题,以及如何优雅地存储和组织爬取的数据。在实际操作中,要遵循网络礼仪,尊重网站的robots.txt文件,合法合规地进行数据...

Global site tag (gtag.js) - Google Analytics