【问题标题】:How to check first run of an AIR application如何检查 AIR 应用程序的首次运行
【发布时间】:2012-03-19 13:31:49
【问题描述】:

我想第一次检查我的 AIR 应用程序是否在我的系统中运行。我的大部分搜索都导致了一个答案,即将文件写入外部并检查文件是否存在。但我的要求不同,如果重新安装相同的版本,那么它应该是第一次运行。有什么想法可以实现吗?

【问题讨论】:

  • 您可以将文件保存在应用程序内部存储中,请在重新安装时删除。

标签: actionscript-3 air flex4 adobe


【解决方案1】:

我正在为多个 ipad 应用程序使用 File.applicationDirectory,并且可以确认在卸载应用程序时写入该文件夹的所有数据都已擦除。因此,能够加载之前保存到此文件夹中的文件可以满足您的需求。

var docDir:File = new File(File.applicationDirectory.nativePath + "/\.\./Documents");  //IOS specific
configFile = docDir.resolvePath("config.xml");
if (configFile.exists) {
  var firstRun:Boolean = false;
  configFile.addEventListener(Event.COMPLETE, onConfigLoaded);
  configFile.load();
}else {
  firstRun = true;
  var configXML:XML = new XML("<?xml version='1.0' encoding='utf-8' ?><config />");

  var fileStream:FileStream = new FileStream();
  fileStream.open(configFile, FileMode.WRITE);
  fileStream.writeUTFBytes(configXML);
  fileStream.close();
}

【讨论】:

  • 我无法在桌面应用程序中执行此操作。如果我们添加 AIR 包文件以外的外部文件,该文件夹不会被删除..
【解决方案2】:

在与您的应用程序安装相同的文件夹中创建一个文件,然后当用户卸载应用程序时,该文件也会被删除,例如 C:\Program Files\yourgame\myfile.txt

【讨论】:

  • 我不这么认为。我相信一些文件在卸载后仍然存在
  • 如果在应用程序安装文件夹中创建了一个文件,它不会随着卸载而删除。文件夹保持原样。
【解决方案3】:

我尝试了一种在应用程序目录中写入文件的方法,第一次遇到安全错误(http://forums.adobe.com/thread/209533)我找到了另一种方法来克服它并在里面写入了一个文件应用程序目录。但是在卸载该文件后不会删除。我的应用程序文件夹保留在那里,因为我在文件夹内写了一个外部文件(我想存储以供首次运行检查)。再次尝试安装应用程序,错误消息显示文件夹存在。所以我必须手动删除文件夹才能重新安装应用程序。如果我删除该文件夹,那么我的问题就解决了,我认为它不是一个好的解决方案,因为用户必须手动删除文件夹重新安装。有没有其他解决办法?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-05
    • 1970-01-01
    • 2023-03-09
    • 2010-12-12
    • 2017-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多