既然 XE6 已經正式 Release,很自然迫不及待的把之前在 XE5 Upd2 開發的專案直接拿來編譯看看有沒有可以得到什麼好處(執行速度更快?更穩定?Showmessage?...)

沒想到好處還沒體驗到,筆者在編譯過程就遇到了一些狀況,在此也先提出來與各位分享

 

1.Unit name 變更

話說 XE5 畢竟是第一個支援 android 開發的版本,XE6 變更相關 Unit name 進行重構,自然也就不足為奇,只是苦了我們這些老百姓,在還沒深入研究前,已經知道變更的部分有

a.FMX.Sensors

   不存在了...直接移除就好

b.Androidapi.JNI.JavaTypes -> Androidapi.Helpers

   如果有用到 JStringToString or StringToJString,請改 use Androidapi.Helpers

c.FMX.Messages -> System.Messaging

   訊息傳遞框架會用到的 unit 也重構了...

 

2.classes.dex

如果你跟筆者一樣會用到自己編譯出來的 classes.dex,那麼請在 XE6 環境中重新編譯 classes.dex,否則 project 轉上來後直接編譯,會死得粉難看

 

3.stylebook

如果你在 XE5 的專案有用 stylebook,那麼轉到 XE6 並開啟專案後,你馬上會得到一個錯訊,提示你某個 property 不存在了,這也還好,老 delphi 使用者應該習慣了,點選 Ignore 就好

但是接下來就沒這麼友善了,如果你想儲存這個 form,按一下「Ctrl-S」,你馬上會獲得第二個獎品

解決方式...自行開啟 xxx.fmx,把跟 stylebook 相關的部分都刪除...豈是一個「慘」字可以形容

4.TVirtualKeyboardStates 變更

如果你會用到去攔截 android 硬體返回鍵,那麼通常你會寫到...

其中 vksVisible 已經不存在了,請改用 TVirtualKeyboardState.Visible

 

to be continued..

    文章標籤

    delphi xe6

    全站熱搜

    縹緲 發表在 痞客邦 留言(0) 人氣()