我有 Delphi 11 Alexandria,我重新創建了簡單的演示來“制作 Android 服務”。
當我在我的 Android 手機上運行它時它作業正常,所以現在我想通過向 中添加一個TTimer組件來增加服務的復雜性TDataModule,但是當我添加時TTimer,應用程式在啟動時崩潰。
然后我TTimer從 中洗掉組件TDataModule并再次運行,但應用程式再次崩潰。
如果我隨后FMX.Types從服務中洗掉了 的宣告(它是在我將 放在TTimer上時添加的TDataModule),那么應用程式將再次正常運行。
為什么不能添加FMX.Types到 Android 服務中?
不能TTimer在 Android 服務中使用嗎?
uj5u.com熱心網友回復:
正如@DalijaPrasnikar 在評論中提到的,這是一個已知錯誤:
RSP-17857:如果包含 FMX.Types 單元,Android 服務應用程式會崩潰
該FMX.Types單元在服務中不起作用,因為它的初始化試圖nil在運行時訪問一個指標(特別是一個名為 的全域變數DelphiActivity,它不是為服務設定的,只是為應用程式設定的)。
要在服務中使用計時器,請嘗試以下解決方法代碼:
https://github.com/DelphiWorlds/KastriFree/blob/master/Demos/AndroidLocation/Common/LS.AndroidTimer.pas
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/340216.html
