六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 74|回复: 0

关于ProductManager的一点小运用

[复制链接]

升级  30%

3

主题

3

主题

3

主题

童生

Rank: 1

积分
15
 楼主| 发表于 2013-1-15 01:58:29 | 显示全部楼层 |阅读模式
主角:adobe.utils.ProductManager;

MXML文件:
<?xml version="1.0" encoding="utf-8"?><s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"    xmlns:s="library://ns.adobe.com/flex/spark"    xmlns:mx="library://ns.adobe.com/flex/mx"   creationComplete="init();"><fx:Declarations></fx:Declarations><fx:Script source="Main1.as"/></s:WindowedApplication>
运用一:判断客户机AIR的安装及环境
Main1.as:

import adobe.utils.ProductManager;private function getStatus():String{var hasAIR:ProductManager=new ProductManager("airappinstaller");if (hasAIR.installed){return "installed";}else{var os:String=Capabilities.os;if (os == "Windows 95" || os == "Windows 98/ME"){return "unavailable";}if (os.indexOf("Mac OS 10.0") == 0 || os.indexOf("Mac OS 10.1") == 0 || os.indexOf("Mac OS 10.2") == 0 || os.indexOf("Mac OS 10.3") == 0){return "unavailable";}if (os.indexOf("Windows") == 0 || os.indexOf("Mac OS 10") == 0 || os.indexOf("Linux") == 0){return "available";}return "unavailable";}}private function init():void{switch (getStatus()){case "installed":trace("已经安装AIR运行时");break;case "unavailable":trace("当前系统无法安装AIR运行时");break;case "available":trace("尚未安装AIR运行时");break;}}
运用二:重启运用程序
Main2.as:
[注:]本例运用,需在app.xml中把
<allowBrowserInvocation>true</allowBrowserInvocation>

import adobe.utils.ProductManager;import flash.events.MouseEvent;import mx.core.FlexGlobals;import spark.components.Button;import spark.components.WindowedApplication;private function init():void{var restartBtn:Button=new Button();restartBtn.x= restartBtn.y=114;restartBtn.label="重启系统"this.addElement(restartBtn)restartBtn.addEventListener(MouseEvent.CLICK, doRestartAppHandler)}private function doRestartAppHandler(event:MouseEvent):void{var app:WindowedApplication=WindowedApplication(FlexGlobals.topLevelApplication);var mgr:ProductManager=new ProductManager("airappinstaller");mgr.launch("-launch " + app.nativeApplication.applicationID + " " + app.nativeApplication.publisherID);app.close();}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表