首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在特定AIR应用程序上检测和调用用户的AIR运行时本地安装?

在特定 AIR 应用程序上检测和调用用户的 AIR 运行时本地安装的方法如下:

1. 获取特定 AIR 应用程序的安装路径

首先,你需要检查用户的 AIR 运行时是否已安装在系统上。AIR 是一个原生平台,即“跨平台富 Internet 应用程序”。为了解决这个问题,你可以尝试读取特定 AIR 应用程序的安装路径,以便访问用户已安装的运行时。

2. 检测特定 AIR 应用程序的安装路径

当 AIR 应用程序安装时,它会将特定版本和语言的 AIR 运行时一起安装在用户的本地系统路径中。你可以在代码中检查特定应用程序的安装路径是否已创建。

2.1 方法一

  1. 获取环境变量,如 $AIR_HOME$RESSOURCE_PATH,该变量包含 AIR 应用程序和运行时的安装目录路径。
  2. 使用编程语言(如 JavaScript、ActionScript、C++)和语言专用库(如:os,对于 JavaScript 和 ActionScript)打开该环境变量对应的文件。
代码语言:javascript
复制
// 获取 $AIR_HOME 环境变量对应的绝对路径
let airHomePath = process.env['AIR_HOME'];

// 打开 AIR 应用程序路径
fs.open(airHomePath + '/bootstrap/package.xml', 'r', (error, fd) => {
  if (error) {
    throw error;
  }
  // ... 
});

// ...

2.2 方法二

  1. 检查 AIR 程序包是否存在安装目录中。可以遍历 /Applications/Users/usr 目录来检查 AIR 程序包是否已安装。

3. 获取和调用自己的 AIR 运行时

3.1 方法一

  1. 对本地 AIR 运行时的安装进行搜索,并加载特定版本的 AIR 运行时。#include<AIR/CBNativeWrappers.h> // 假设你使用的是 C++ CBNativeWrapper *nativeWrapper = new CBNativeWrapper(); // 加载特定版本的 AIR 运行时 BOOL loadAIRRuntime() { // 设置 AIR 运行时的路径 #if defined(_WINDOWS_64) // 假设你希望加载的是 64 位平台的 AIR Runtimes NativeOS os = NativeOS::Windows; OSType osType = os == NativeOS::Windows ? OSTypeWindows : OSTypeLinux; #elif defined(_WINDOWS_32) NativeOS os = NativeOS::Windows; OSType osType = os == NativeOS::Windows ? OSTypeWindows : OSTypeLinux; NativePath path(AIRRuntimeDirectory32); #elif defined(__APPLE__) // 支持mac平台 NativeOS os = NativeOS::MacOS; OSType osType = os == NativeOS::MacOS ? OSTypeMacOS : OSTypeLinux; NativePath path(AIRRuntimeDirectory); #elif defined(unix) NativeOS os = NativeOS::Linux; OSType osType = os == NativeOS::Linux ? OSTypeLinux : OSTypeUnknown; NativePath path("/usr/lib64/libair-wrapper.so"); #endif // 加载 AIR 运行时 HRESULT r = nativeWrapper->InitRuntimePath((NativePath*)&path, osType, &runtime); switch (r) { case NOERROR: return NOERROR; case E_FILE_NOTFOUND: case E_ACCESSDENIED: { // 处理错误 return NOERROR; } case E_FAIL: return E_FAIL; default: return NOERROR; } } // 检查加载是否已成功 if(loadAIRRuntime()) { // 从本地 AIR 运行加载特定版本运行时 nativeWrapper->CreateAppDomain(); nativeWrapper->RegisterAppDomain(); } else { // 处理错误 } // 使用生成的 AIR 运行时 nativeWrapper->ExitAppdomain(); delete nativeWrapper;

3.2 方法二

  1. 调用 AIR 运行时获取本地版本。假设当前你使用的是 JavaScript,则可以通过在客户端或服务器端调用 flash.system.AIRRuntime.getNativePath() 函数获取本地 AIR 运行时路径。

4. 调用 AIR 运行时的特定功能

最后,你可以在你的客户端应用程序中调用从 AIR 运行时生成的 Context 对象的特定功能以操作特定 AIR 运行时模块。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • adobe air是干什么的?

    Adobe air 是知名软件公司Adobe旗下的产品之一。 Adobe[1]Integrated Runtime允许你利用现有的web开发技能(包括Flash, Flex, HTML, JavaScript, Ajax)优势,建立和配置跨平台(或跨操作系统)的桌面RIA(InternetApplications)应用。2.7以后的版本不再支持桌面Linux操作系统[2]。 对于用户来说,Adobe AIR 实现的跨平台应用,使其不再受限于不同的操作系统,在桌面上即可体验丰富的互联网应用。并且是比以往更低的资源占用、更快的运行速度和顺畅的动画表现。工具。例如 新浪微博客户端微博 AIR、Google Analytics 分析工具、Twitter 客户端 TweetDeck及众多最新影片介绍工具等。 AIR能使你在熟悉的环境下工作,去利用你觉得的最舒适的工具,并且通过支持Flash, Flex, HTML,JavaScript, 以及 Ajax,去建立接近你需要的尽可能好的体验。 AIR 是 Adobe Integrated Runtime的缩写,它是一个跨操作系统的运行时(Runtime),利用现有的Web开发技术(Flash,Flex,HTML,JavaScript,Ajax)来构建‘富Internet’(我一直觉得这个翻译很可悲,Rich被翻译成富后即拗口又不达意)应用程序并部署为桌面应用程序。 AIR 支持现有的Web技术如Flash,Flex,HTML,JavaScript和AJAX,可以用你最熟练的技术来开发您所见过的最具用户体验的RIA程序。 首先,Adobe air 是Adobe公司旗下的产品之一,如果用户用不到该软件,可以卸载。 其次,Adobe Integrated Runtime允许用户利用现有的web开发技能(包括Flash, Flex, HTML, JavaScript, Ajax)优势,建立和配置跨平台(或跨操作系统)的桌面RIA(InternetApplications)应用。对于用户来说,Adobe AIR实现的跨平台应用,使其不再受限于不同的操作系统,在桌面上即可体验丰富的互联网应用。并且是比以往更低的资源占用、更快的运行速度和顺畅的动画表现工具。例如新浪微博客户端、微博 AIR、Google Analytics 分析工具、Twitter 客户端 TweetDeck及众多最新影片介绍工具等。 通俗来说: Adobe Air就是利用Adobe公司的Flash技术开发的视频播放平台。这个视频播放终端运行平台的主要功能就是可以在网上看视频,跟Flash相同,但是功能更强大。 其实通俗的讲Adobe Air就是一个平台,这个平台提供一些软件接口,想开发软件的人员用这些接口和其他的编程技术可以开发出来一些软件。

    04

    反插件化:你的应用不是一个插件(转)

    Android插件化技术是应用程序级别的一项创新型技术,它的初衷主要是用于热更新,减少APK安装包的大小,以及解决65535方法数量的限制。从技术层面来说,Android插件化技术与传统意义上的动态加载还不一样,因为它在不需要声明任何特定的接口或组件的情况下,它就在可以加载或者启动整个应用程序(比如apk文件)。Android插件化技术的主要应用场景是,在同一个设备上启动多个应用的实例,也就是我们常说的"双开"。根据我们的观察,诞生Android插件化的的两个主要动机是:1是在社交APP中的多账户需求,2是在应用商店中即时启动应用程序。上面这两种应用场景均来自用户的需求。比如,一个用户既拥有Twitter的个人账户,也有一个拥有Twitter的企业账户,而又不想来回注销切换账户并重复登录,并且不想使用两个手机。Google Play中有一个很受欢迎的APP——"Parallel Space",就是采用的这项技术,它的安装量已经有5000万次。

    02
    领券