我將很快發佈我的Air/Flex應用程序,但我非常確定可以在Air可用的各種平臺上彈出一些錯誤。所以我想知道是否有一種方法來實現一種機制,每次應用程序崩潰時都會發送錯誤報告,記錄發生錯誤的位置,並將其發送到遠程服務器。這樣我可能會發現錯誤,否則會被忽視。有沒有辦法將詳細的遠程崩潰報告添加到Flex Air應用程序?
2
A
回答
2
Flash 10和AIR2現在支持全局錯誤處理。更多的信息在這裏:http://help.adobe.com/en_US/air/reference/html/flash/events/UncaughtErrorEvent.html
使用這種功能捕捉未捕獲的異常;您可以將跟蹤提交給專門設置的某個Web服務以抓取它們。使用Google App Engine非常適合此目的,因爲它具有記錄功能,可以從調用應用程序的客戶端獲取各種元數據。另外,如果你的日誌由於某種原因變得很大 - 至少你不必擔心存儲它們。谷歌爲你做:)
我已經建立了如下所述的服務(授予它有一些缺陷,特別是任何人都可以調用它並添加「痕跡」,但你可以添加一些共享的祕密和帖子通過HTTPS獲得一些微小的安全措施)。
App Engine的記錄服務
#!/usr/bin/env python
from google.appengine.ext import webapp
from google.appengine.ext.webapp import util
class MainHandler(webapp.RequestHandler):
def post(self):
import logging
if self.request.get('trace'):
logging.error(self.request.get('trace')) #Adds a row to GAE:s own logs :)
self.response.out.write('trace logged')
else:
set_status(501)
def get(self):
""" Kill this function when done testing """
test_form = """
<form action="/" method="POST">
<textarea name="trace"></textarea>
<input type="submit">
</form>"""
self.response.out.write(test_form)
def main():
application = webapp.WSGIApplication([('/', MainHandler)],
debug=False)
util.run_wsgi_app(application)
if __name__ == '__main__':
main()
我寫了包含這個小測試功能,只需POST一點AIR-應用:教育署指定的參數 「跟蹤」 的App Engine服務。
發佈到日誌服務(動作腳本)
private function postToLogger(event:MouseEvent):void
{
var service:HTTPService = new HTTPService();
var parameters:Object = {'trace': "omg something went wrong"};
service.url = "https://YOURSUPERSIMPLELOGGINGSERVICE.APPSPOT.COM";
service.method = HTTPRequestMessage.POST_METHOD;
service.resultFormat = HTTPService.RESULT_FORMAT_E4X;
service.addEventListener("result", onSuccess);
service.addEventListener("fault", onError);
service.send(parameters);
}
最後,這是它的外觀在日誌中,大量的元數據,以及跟蹤的你在你的AIR應用程序捕獲。
相關問題
- 1. 好庫生成ios應用程序的詳細崩潰報告?
- 2. 應用程序崩潰但沒有TestFlight崩潰報告
- 3. ios應用程序崩潰沒有錯誤,沒有崩潰報告
- 4. 有沒有辦法將覆蓋率報告添加到gitlab?
- 5. Symbolicate崩潰報告沒有應用程序二進制
- 6. 沒有TestFlight崩潰報告
- 7. iPhone崩潰報告沒有找到
- 8. OS X應用程序崩潰報告
- 9. xamarin.mac應用程序崩潰報告
- 10. iPhone應用程序崩潰報告
- 11. Android應用程序崩潰報告
- 12. 應用程序崩潰報告起源
- 13. WinRT sideloaded應用程序崩潰報告
- 14. Crashlytics沒有收到崩潰報告?
- 15. 有沒有辦法讓我們自己的應用程序上傳它的崩潰報告?
- 16. 有沒有辦法在Adobe Flex AIR應用程序中外部化主機名?
- 17. 的Android應用程序崩潰玩崩潰報告
- 18. SceneKit崩潰而沒有詳細的崩潰信息
- 19. 當推送到詳細視圖時,應用程序崩潰
- 20. 有沒有辦法在Flex頂級應用程序中添加Keyboardevent?
- 21. 有沒有辦法遠程查看Swing應用程序?
- 22. 應用程序崩潰 - 有線崩潰
- 23. Windows 7的崩潰報告實用程序,MFC應用程序
- 24. 有沒有辦法將6502程序集添加到Google Code Prettify?
- 25. 有沒有辦法將徽章添加到Android中的應用程序圖標?
- 26. Android上的AIR應用程序崩潰
- 27. 應用程序崩潰沒有理由
- 28. 有沒有辦法將Apple遠程支持添加到使用Javascript的網站?
- 29. 有沒有辦法在運行時讀取應用程序的崩潰日誌
- 30. 有沒有辦法在運行時將佈局添加到Android應用程序?
甜! Google App Engine規則! – PEZ 2010-03-09 07:22:09