Delphi XE7 這個版本,表面上看跟 XE6 相比似乎改變不大,骨子裡筆者認為改進的幅度還是不小的,除了之前介紹到的 GCM、Splash Screen 等看得見的,還有 What's New 中提到的 New TMultiView Component、FireMonkey Save State Feature 等等...

不過筆者最關心的,其實是 What's New 中提到的另外一項「Add Java Libraries to Your Applications for Android」,在 Android 的世界就像是在 Windows 一樣,可以允許各式各樣的第三方廠商提供 SDK 來銜接周邊硬體,包含之前研討會中廖老師分享中提到的 IPCam、iBeacon、Bluetooth Printer 等等,廖老師在 FB 上分享的 powerpoint 也有稍微提到怎麼銜接,但是可能是時間關係,沒有細講,這部分就讓小弟來代勞一下吧...

截至筆者撰寫此文的同時,EMBT 尚未釋出 Java2OP.exe 這個工具的正式版本,照之前李維大師提供的訊息,目前已經進入 QA 階段,但釋出日期尚不得而知,因此在此時此刻若要先嘗試結合第三方廠商提供的 jar,必須先透過其他工具(需要 $$),比如 Java2PasJavaImport for Android 等等,.jar 的檔案就是 Java library file,其實就像 Windows 世界的 DLL,若要使用則必須知道其 API 的呼叫介面、參數等等,而上述工具就是把 .jar 轉成 .pas 的呼叫介面,方便 Delphi 的使用者來使用。

這次要舉的範例比較簡單,讓大家可以輕鬆入門,免得覺得這部分門檻太高,因此結合硬體的部分本次先跳過,畢竟這些周邊不是人人都有,這次要結合的是 Base64Coder in Java,這是一個 open source 的專案,主要提供 Base64 的 Encode 與 Decode,官方網站在此:http://www.source-code.biz/base64coder/java/ ,由於 android 在 API Level 8(Android 2.2)後才有內建 Base64 的 Encode 與 Decode 函式,因此若你的專案要向下相容更低版本的 android,勢必得自行準備這部分的 code,這時就可以引用這個 open source 寫好的東西。

首先我們要從上述網站取得 .jar,因此需要下載的是 full package

文章標籤

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

還記得 XE5/XE6 的時代嗎?透過 java code 解決了當時 delphi 尚不支援的 Splash Screen 與 GCM,那麼到了 XE7 的時代,這部分又變得如何了呢?

在 XE7 的 What's New 已經說的很清楚,「3.5 Splash Screen Support for Android

所以 XE7 是已經內建這個設定,只需要把 project 的 options 打開設定一下屬性就 ok 了,真是太方便啦...

文章標籤

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

由於 Delphi 推陳出新的速度實在太快了,筆者這次是跳過 XE6 Upd1 的版本,準備由 XE6 直上 XE7,試用的第一步想當然耳想先瞭解一下 apk 是不是又長大了,還記得在 XE6 的時候,筆者是說「小孩只會長大...回不去了」,在還沒驗證前,筆者認為長大是一定的,接下來就看一下數據吧...

比較對象還是同一個 app

以下是比較資料

版本 apk size classes.dex size
XE5 with Upd2 4.94 MB (5,186,751 bytes) 1.28 MB (1,343,644 bytes)
XE6 5.49 MB (5,757,687 bytes) 1.90 MB (1,999,460 bytes)
XE7 6.14 MB (6,444,201 bytes) 2.64 MB (2,773,944 bytes)

果然繼續長大,其實這部分並不意外,納入更多 java class、對應更多 java api,還有 Baas 的 api,classes.dex 跟 apk 的 size只會越來越大,筆者想不出變小的可能,除非  EMBT 能變魔術,就像當初在 Windows 的時候,Exe 越來越大,但 EMBT 硬是搞了個 bpl 出來,馬上把 Exe 的大小跟負擔減輕了不少。

文章標籤

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

目前 EMBT 官方網站上,尚未正式公告 RAD Studio XE7 已經 release 了,但如果你是 delphi 的忠實愛用者...like me,那麼你應該可以猜的出來,其實 EMBT 未公開的官方網址已經可以下載到 RAD Studio XE7 正式版的 ISO 檔案了

HTTP

FTP

不過由於包含 Release Notes、What's New 等都尚未解禁,也沒有安裝序號可用,所以先下載擺著等吧,畢竟檔案有 5.23 GB,下載也是需要些時間啊...

XE7 Release Notes 預定之URL

文章標籤

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

寫了這麼多篇分享文,總不能光說不練吧,POST 上把這些東西集大成的小品讓大家參詳....delphi 真的可以寫 app、也可以跨平台

這個 app 是公司內部使用的來案管理系統,也可以視為小型的 CRM

展示機分別使用 Acer Liquid E1(android 4.1.1) 以及 iPhone 5S(iOS 7.1.2)

手機桌面

  

文章標籤

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

再接再厲...本系列最後一篇,就讓我們完成 Push Notification 的 Server 端吧...

上一篇有提到 Luis Felipe 大大有分享出來 source code,並且包含 video 的教學,其實 Server 端的部分,EMBT 後來在 CodeRage 有翻譯成英文版做說明,Client 端的部分也有稍微講到

video is here

https://www.youtube.com/watch?v=duAzLQJ898g

就讓筆者提供一個中文版的教學吧...

文章標籤

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

Apple Push Notification 這塊在網路上已經有網友(Luis Felipe)分享了,包含完整 Client/Server 端的 source code 與 video,不過這位老兄可能是西班牙人,所以看 blog 或是聽 video 可能會有點吃力

blog

http://lfgonzalez.visiblogs.com/2013/05/delhi-xe4-ios-adicionando-soporte-a-notificaciones-remotas-video-y-codigo-fuente/

source code

http://lfgonzalez.visiblogs.com/2013/05/delhi-xe4-ios-adicionando-soporte-a-notificaciones-remotas-video-y-codigo-fuente/apnserverandclient/

文章標籤

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

設定好要做的事...還是努力一下來還自己訂下的債吧...雖然最近的確粉忙

話說回來,這次要分享的是 iOS app 更新的方式,如果是使用 Enterprise Program 開發出來的 app,在沒有上架到 apple app store 的情況下,更新 app 的方式網友分享大概有下面五種

法一:用Ad-Hoc Distribution,把.ipa檔燒進有登記到Provisioning File的iOS裝置中。
法二:把ipa檔案,綁上In-House Distribution的Provisioning File,用email發佈給公司員工,透過iTunes來安裝App。
法三:透過OS X Lion Server的Profile Manager,綁上In-House Distribution的Provisioning File,用推播訊息(Push Notification)無線通知使用者下載安裝。

文章標籤

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