我有一個連接了三個傳感器的Arduino。每100ms Arduino的打印串口新線由#隔開三個更新的值:與Arduino和serproxy進行串行通訊以進行閃存。僅在測試模式下的預期結果
例:
23#11#50_18_1_14_48_0_226_0_16_33_64_2_1_97_36_128_24_170 26#12#50_18_1_14_48_0_226_0_16_33_64_2_1_97_36_128_24_170 33#11#50_18_1_14_48_0_226_0_16_33_64_2_1_97_36_128_24_170 48#10#50_18_1_14_48_0_226_0_16_33_64_2_1_97_36_128_24_170
使用serproxy通過這個值,以Flash和AS3的socket函數我可以跟蹤在測試模式下的串行輸出(CTRL + ENTER)。在這一點上,所有的工作如預期。
當我發佈並運行swf文件時,我可以接收到串行數據,但並不像預期的那樣每隔100ms我只接收一部分輸出。我在測試模式下收到的並不總是相同的部分,並不總是完整的預期輸出。
它可能是與安全有關的東西?
這裏是我的閃存代碼接收數據:
var dataSocket:Socket = new Socket("localhost",5333);
dataSocket.addEventListener(ProgressEvent.SOCKET_DATA, socketDataHandler);
function socketDataHandler(event:ProgressEvent):void {
var sensValue:String;
sensValue = dataSocket.readUTFBytes(dataSocket.bytesAvailable);
trace(sensValue);
var sensData:Array = sensValue.split("#");
sensor1 = sensData[0].toString();
sensor2 = sensData[1].toString();
sensor3 = sensData[2].toString();
}
任何想法?謝謝
你好米卡,謝謝你的幫助。我用Flash開發(AS3不是OOP)。我需要在桌面上運行它,而不是在瀏覽器中運行。我是否可以使用Adobe Flash Professional使用我的fla項目導出Air應用程序?開發Air應用程序我需要Flash Builder嗎? – 2014-12-10 12:35:46
關於AS3 Security.APPLICATION? – 2014-12-10 13:01:59
您可以直接從Flash Pro創建Air項目 - 請參閱:http://help.adobe.com/en_US/air/build/WS789ea67d3e73a8b21ec24feb12478b70aff-8000.html – mika 2014-12-10 18:10:44