[閒聊] 關於 HARMAN 接手 Adobe AIR, 及未來發展

作者: wt5566 (commend & comment)   2019-11-15 22:52:32
好一陣子沒碰FLASH相關技術了,最近心血來潮估狗了一下FLASH的近況,
發現今年有很大的轉變,Adobe AIR 現在的維護將由 HARMAN 來接手,
Adobe則繼續專注於 adobe Animate 軟體動畫開發,以及發布WebGL程式和動畫這部分,
(WEBGL 為 Web API標準,可直接在瀏覽器中實現,無需在下載FLASH PLAYER插件並保
持其安全性更新,提供更高的安全性和便利性),WebGL相關建立和發布教學,
網路上很多教學資源就不多述..
HARMAN是韓國三星(Samsung)集團旗下的一間公司,
希望能對 PC端 和 移動端有一番新作為,
這是官網 https://airsdk.harman.com/
關於HARMAN的短中期計畫和一些 Q & A 整理
Q:HARMAN 對 Adobe AIR做了什麼?
HARMAN 和 Adobe 在 Flash Player 和 AIR 技術方面過去有著長期的合作關係,
隨著 Adobe在2020年底終止對 Flash Player 和 AIR 的支援,HARMAN與 Adobe 達成了
一項協議,允許HARMAN承擔支援和維護AIR runtime 和 SDK。由於HARMAN沒有銷售
ex:Adobe Animate 或 Adobe Flash Builder之類的工具中獲得任何相關收入,因此,
HARMAN 提供 AIR SDK 作為商業許可的 software package,但具有免費方案,
以支援業餘愛好者和極低收入的個人或公司。HARMAN希望繼續支援和開發AIR軟體,
以確保它對快速跨平台應用程序開發而言是有用且具有競爭力的。
Q:相對於Adobe,HARMAN提供哪些支援?
Adobe對AIR的支援將一直持續到2020年底,但僅適用於桌面平台,並限於安全修補程序
和必要的更新。這些將在 "32版" SDK下繼續進行。HARMAN發布了 "33版",該版本最初僅
適用於Android平台,但將進行進一步的更新,直到 HARMAN 支援與Adobe相同的平台,即
Android、iOS、Windows和MacOS。HARMAN還將修復 runtimes 和 framework 中的錯誤,
並根據AIR社區的建議添加新的功能。
Q:HARMAN的長期計劃是什麼?
長期目標是擴大AIR的使用範圍,以使更多開發人員可以使用AIR。為了實現這一目標,
HARMAN 首先將致力於確保必要的作業系統更新和錯誤修復來維護runtimes,並添
加新功能以使該平台對新開發人員更具吸引力。期望由AIR開發人員社區來驅動進行
更改(就漏洞修復和新功能的優先級而言),從而改善runtimes和SDK的功能和成熟度;
因此,每個版本在應用程序的穩定性、效能或功能方面均應為社區帶來真正的利益。
Q:為什麼必須為此付費?
為了 HARMAN 維護AIR,需要資助這項工作。過去 Adobe 從 AIR 和 Flash Player
的商業工具中免費獲得了 AIR 和 Flash Player 的收益。
HARMAN 探索了許多商業模型,但從 AIR 社區的壓倒性回饋得知,使用SDK工具的訂閱
許可證將是最合適的選擇,而不是將應用程序分發給最終用戶有關的任何選擇。
因此,HARMAN制定了一套適用於各種收入個人或公司的年度許可費,並對低收入的個人
或公司提供免費服務。
Q:HARMAN支援哪些平台?
由於Google要求對新應用程序提供64-bit支援,因此最初的重點一直放在Android平台上。
該版本現已發布,並且HARMAN將開始考慮推出適用於iOS、MacOS和Windows目標平台的
AIR SDK,以使其與Adobe一直支援的平台保持一致。所有這些平台都運行之後,HARMAN將
能夠開始更新AIR API並在這些API上添加新功能。HARMAN還正在研究支援iPadOS的要求以
及將來MacOS更新所需的更改。
Q:AIR是否支援 64-bit Android目標?
到目前為止,HARMAN已經提供了對64-bit ARM Android目標(眾所周知的“ armv8”或
“ ARM64”)的支援。連同以前的armv7支援,將涵蓋絕大多數Android設備。SDK已為基
於Android x86 的平台提供了支援,並且HARMAN還將研究與之等效的64-bit x86_64,以
便希望在x86芯片組上部署的公司也能滿足Google的要求。
Q:可以在Linux平台上獲得AIR嗎?
目前,HARMAN在Linux上支援AIR runtime的自定義舊版本,和支援Wayland,但具有一些
簡化的功能。Adobe已從2.6版開始停止對AIR SDK的Linux支援。HARMAN正在考慮重新引入
對Linux的支援,但這可能取決於單獨的資金來源,並且在可以支援的Linux的各種
程式庫(libraries)和發行版方面可能受到限制。HARMAN 將在這裡進一步研究和選擇,
之後會有更多詳細信息,闡明相關計劃。
Q:可以在瀏覽器中建立AIR嗎?
這是許多公司的要求,為AIR應用程序提供WebAssembly目標。這是一個有趣的概念,我們
需要進一步研究:由於運行沙箱,我們知道瀏覽器中的AIR會有局限性,但我們將進一步
研究這在任何程度上是否可行,之後將我們的計劃更新於社區。
Q:如何獲取最新版本的AIR SDK?
https://airsdk.harman.com/download,可下載最新版本。HARMAN將繼續Adobe的做法,
為Flex開發人員和非Flex AIR開發人員提供不同的SDK包:Flex版本的工具較少,因此
仍將使用原始的Flex編譯器,而不是引入的較新的ActionScript編譯器用於AIR。
Q:HARMAN將為我們提供什麼支援?
HARMAN將提供錯誤修復服務。HARMAN將對各種問題進行分類,並優先考慮那些被認為很
關鍵的問題,例如崩潰和沒有解決方法。將為企業客戶提供優惠的支援服務,
歡迎發送電子郵件討論問題;一般錯誤也可以透過Daniel在Gamua設立的GitHub
進行報告: https://github.com/Gamua/Adobe-Runtime-Support/issues
Q:為什麼初始啟動畫面出現在我的應用程序中?
HARMAN的AIR SDK版本將初始畫面載入到未對AIR SDK進行有效付費訂閱的人員打包的
應用程序中。這是為了提高人們對Adobe AIR的使用/流行的認識,因此會在首次啟
動應用程序時短暫出現。
Q:如何移除啟動畫面?
要刪除初始畫面,您需要成為AIR SDK的付費訂戶,屆時HARMAN將提供SDK的許可證文件。
如果安裝正確,則在啟動過程中打包的任何AIR應用程序都不會顯示初始畫面。請注意,
我們無法更改已生成的APK軟件包的行為。
Q:如何構建64-bit APK?
使用AIR開發人員工具(ADT),可以為各種AIR目標平台生成APK文件。對於64-bit ARM
平台,現在有一種“ armv8”架構,可以通過“ -arch armv8”請求在APK目標詳細信
息之後將其添加到命令行。這將導致一個APK文件,其中包含“ lib / arm64-v8a”子
文件夾,並在此處包含AIR的本機代碼。如果使用IDE創建APK文件,則需要在AIR發行說
明中找到有關這些文件的適當說明。SDK的“ lib”文件夾中有一個名為adt.cfg的配置
文件,該文件可以覆蓋各種工具所使用的任何選項,這些工具可以用來確保您完全控制
要打包的體系結構。
Q:如何將我的應用上傳到Play商店?
對於當前僅上傳一個包含32位ARM版本的AIR的APK文件的用戶,您現在還需要上傳一個64
位ARM版本的APK。對於兩個ARM體系結構,新應用程序還需要具有兩個APK。兩個APK文件
都必須具有相同的應用程序-但是,由於Play商店機制的原因,它們將需要具有不同的版
本代碼。Play商店會根據該設備的功能製定出最合適的版本以提供給用戶的設備:64位
Android實際上可以運行32位和64位應用程序,因此64位APK需要具有更高的版本版本代碼
,以便在32位APK文件中進行選擇。如果您使用錯誤的版本代碼,將會看到關於64位APK被
32位APK完全遮蓋的錯誤。
Q:為什麼我需要多個APK?
將多體系結構支援添加到AIR時,可以在單個APK文件中包含AIR的ARM和x86版本,但是在
安裝之前,所有這些都需要下載到每個用戶的設備上,這是相當大的開銷。由於開發人員
要求限制APK的大小,Adobe選擇為不同的體系結構創建不同的APK,因此在ADT中引入了“
-arch”參數。通過添加armv8架構,這種模式得以繼續。此後,Google引入了一種“
Android應用程序捆綁包”格式,該格式可以簡化部署(在Play商店中生成適當的APK,
然後將其下載到最終用戶的設備上),並且HARMAN正在研究是否可以將其用作ADT的輸出
,而不是APK文件。
Q:Play商店說我的應用程序不兼容64位。
此錯誤最可能的問題是APK文件不包含AIR的64位版本。當使用Adobe Animate之類的IDE時
,在此提供了用於發布APK文件的特定“ ARMv8”選項之前,必須覆蓋IDE所使用的命令以
將應用程序打包為32位。SDK的“ lib”文件夾中有一個配置文件可用於執行此操作,因
此,請檢查配置文件是否正確到位並具有正確的設置。發行說明中提供了更多訊息。
Q:Flash Builder在構建我的應用程序時顯示錯誤。
與Flash Builder的兼容性發現了許多問題:主要的問題是Flash Builder文件夾中的Java
運行時環境需要更新-可以從Java 8開發工具包複製它。比較功能還存在一些問題,可能
會導致“內部編譯器錯誤”消息,其中需要刪除名為“ p2”的Flash Builder子文件夾。
可能還會發生其他一些問題,請參見發行說明中的鏈接。
Q:我使用ANE-是否需要這些的64位版本?
是的:ANE中需要為要打包的體系結構提供適當的平台支援。因此,在打包“ armv7”時
,您需要“ Android-ARM”,對於“ armv8”,則需要“ Android-ARM64”,對於“ x86
”,則需要“ Android-X86”。如果沒有合適的ANE,則在打包APK時ADT應該會輸出警告
消息,通知您它將使用默認(僅AS3)平台功能。
Q:如何創建支援64位Android的AIR本機擴展?
ADT已更新為還支持ANE軟件包的“ Android-ARM64”平台。格式與Android-ARM或
Android-X86相同。如果ANE使用Java,則所有不同的Android平台都可以使用相同的
classes / jar文件,但是如果使用的是編譯成.so文件的C / C ++代碼,則需要使用
Android進行編譯用於ARMv8(aarch64)架構的NDK。
Q:如果開發人員不再支持我的ANE,該怎麼辦?
這是許多人報告的問題。儘管可能會破解現有的基於Java的ANE,使其另外支援
Android-ARM64,但對於基於C / C ++的ANE來說是不可能的,並且始終值得從繼續供貨的
其他供應商那裡購買ANE。支持他們的擴展。
Q:我有一個需要Flash Player的網站,如何在2020年以後繼續使用?
基於Flash的Web應用程序有一些選項,尤其是在使用Flex時。HARMAN使用各種工具和技術
(包括Haxe,Apache Royale,Angular,OpenUI5和許多其他JavaScript框架)提供軟體
服務,以支援從Flash / Flex遷移內容。如果可以將應用程序部署在瀏覽器之外,那麼重
用基於Flash的技術通常會更簡單:將應用程序遷移為使用AIR,或者如果它是一個使用大
量HTML / JS程式碼的網站,那麼HARMAN可以提供“打包的瀏覽器”解決方案的選項,
其中我們包裝了瀏覽器引擎(例如Chromium)以及Flash Player的自定義版本,因此
該包是一個單獨的可安裝應用,純粹旨在加載和運行Web應用程序。
有關這些選項的更多消息,[email protected]
Q:我可以在嵌入式和封閉式設備上分發Flash Player或AIR應用程序嗎?
Adobe的Flash Player EULA以及Adobe和HARMAN的AIR SDK許可協議都對軟體的使用和部署
有一些限制。但是,HARMAN多年來一直是Adobe的經銷商和合作夥伴,以確保Flash
Player和AIR可以在嵌入式設備上以及在不符合標準/免費協議限制的情況下工作。如果要
將軟體部署到封閉或嵌入式環境中,請透過[email protected]與我們聯繫,以討
論我們提供的單獨的運行時許可協議。
以上

Links booklink

Contact Us: admin [ a t ] ucptt.com