Android上的AIR应用程序崩溃

时间:2012-07-06 13:41:57

标签: android air crash adobe

我使用Adobe AIR和FlashDevelop开发Android应用程序。不幸的是我的应用程序在启动后崩溃(标准“进程有air.HelloWorld停止”消息)并且我无法设置调试器(冻结“等待Flash Player连接到调试器”)。

当我尝试在FlashDevelop中启动时 - 它可以工作。当我在模拟器上安装.apk并尝试启动它时会出现问题。

Main.as

import flash.desktop.NativeApplication;
import flash.events.Event;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.ui.Multitouch;
import flash.ui.MultitouchInputMode;

public class Main extends Sprite {

    public function Main() : void {
        stage.scaleMode = StageScaleMode.NO_SCALE;
        stage.align = StageAlign.TOP_LEFT;
        stage.addEventListener(Event.DEACTIVATE, deactivate);

        // touch or gesture?
        Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;

        // entry point
        var main : FlixelMain = new FlixelMain();
        addChild(main);
    }

    private function deactivate(e:Event) : void {
        // auto-close
        NativeApplication.nativeApplication.exit();
    }

}

FlixelMain.as

import org.flixel.*;

public class FlixelMain extends FlxGame {

    public function FlixelMain() {
        FlxG.mobile = true;
        super(480, 800, MenuState, 1, 60);
    }

}

application.xml中

    <?xml version="1.0" encoding="utf-8"?>
<application xmlns="http://ns.adobe.com/air/application/3.1">

  <id>air.HelloWorld</id>
  <versionNumber>0.1</versionNumber>
  <supportedProfiles>mobileDevice</supportedProfiles>
  <filename>HelloWorld</filename>
  <name>HelloWorld</name>

<android>
    <manifestAdditions><![CDATA[<manifest android:installLocation="auto">
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch" />
    </manifest>]]>
    </manifestAdditions>

  </android>

  <initialWindow>
    <title>HelloWorld</title>
    <content>HelloWorld.swf</content>
    <visible>true</visible>
    <fullScreen>true</fullScreen>
    <!--<autoOrients>false</autoOrients>-->
    <!--<aspectRatio>landscape</aspectRatio>-->
    <renderMode>cpu</renderMode>
    <systemChrome>standard</systemChrome>
    <aspectRatio>portrait</aspectRatio>
  </initialWindow>

  <icon>
    <image72x72>icons/icon_72.png</image72x72>
    <image114x114>icons/icon_114.png</image114x114>
    <image512x512>icons/icon_512.png</image512x512>
  </icon>
</application>

导出的APK文件

http://dynax.boo.pl/HelloWorld.apk

如果有人可以在他的设备上查看此文件或知道此问题,我将不胜感激:) 问候。

1 个答案:

答案 0 :(得分:0)

这可能与您的网络连接速度有关。

如果通过慢速连接运行调试器,例如设备的WIFI连接,调试器似乎无法跟上通过网络发送的数据量。当您达到断点时,Stack-traces和局部变量都通过网络发送。

如果你的连接造成了瓶颈,它可能会使事情变慢,因为应用认为它已经崩溃然后退出。

在更快的网络连接上运行调试器可能会解决您的问题。