4

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

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

主文件

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);
    }

}

应用程序.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

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

4

1 回答 1

0

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

如果您通过慢速连接运行调试器,例如来自您设备的 WIFI 连接,则调试器似乎无法跟上通过网络发送的数据量。当您遇到断点时,堆栈跟踪和局部变量都会通过网络发送。

如果您的连接造成瓶颈,它可能会减慢速度,让应用程序认为它已崩溃然后退出。

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

于 2012-09-19T19:53:41.697 回答