0

我想使用 Air 为 PC、Mac、Android、Ios 构建。

是否可以像 Adob​​e 建议的那样从单个代码库中执行此操作。

还是我需要维护 4 个单独的构建?

一些指导将不胜感激。

问候 C

4

1 回答 1

0

迄今为止,我已经能够维护一个单一的代码库。我做了以下事情:

        private function getHostName() : void
        {
            if (NativeProcess.isSupported)
            {
                var OS : String = Capabilities.os.toLocaleLowerCase();
                var file : File;

                if (OS.indexOf('win') > -1)
                {
                    // Executable in windows
                    file = new File('C:\\Windows\\System32\\hostname.exe');
                }
                else if (OS.indexOf('mac') > -1 )
                {
                    // Executable in mac
                }
                else if (OS.indexOf('linux'))
                {
                    // Executable in linux
                }

                var nativeProcessStartupInfo : NativeProcessStartupInfo = new NativeProcessStartupInfo();
                nativeProcessStartupInfo.executable = file;

                var process : NativeProcess = new NativeProcess();
                process.addEventListener(NativeProcessExitEvent.EXIT, onExitError);
                process.addEventListener(ProgressEvent.STANDARD_OUTPUT_DATA, onOutput);
                process.start(nativeProcessStartupInfo);
                process.closeInput();
            }
        }

        private function onOutput(event : ProgressEvent) : void
        {
            var strHelper : StringHelper = new StringHelper();
            formStationID.text = event.target.standardOutput.readUTFBytes(event.target.standardOutput.bytesAvailable);
            formStationID.text = strHelper.trimBack(formStationID.text, "\n");
            formStationID.text = strHelper.trimBack(formStationID.text, "\r");
        }

        private function onExitError(event : NativeProcessExitEvent) : void
        {
        }

照顾本地电话。除了本机调用之外,我发现很少有不能通用编写的东西,但其中,上述方法也适用于代码集的任何部分。

于 2012-05-18T14:42:51.107 回答