Adobe AIR

Adobe AIR (trước đây là Adobe Integration Runtime) là một hệ thống runtime đa nền tảng được Adobe Systems phát triển để xây dựng các ứng dụng máy tính để bàn và ứng dụng di động, được lập trình bằng Adobe Animate, ActionScript và tùy chọn Apache Flex. Thời gian chạy hỗ trợ các ứng dụng có thể cài đặt trên Windows, OS X và các hệ điều hành di động bao gồm Android, iOS và BlackBerry Tablet OS. Ban đầu nó cũng chạy trên Linux, nhưng đã ngừng hỗ trợ kể từ phiên bản 2.6 vào năm 2011.

Adobe AIR là môi trường runtime cho phép các nội dung Adobe Animate và bộ mã hóa ActionScript 3.0 xây dựng các ứng dụng và trò chơi video chạy như một ứng dụng độc lập và hoạt động tương tự như ứng dụng gốc trên các nền tảng được hỗ trợ. Ứng dụng Flash Player hoặc HTML5 được sử dụng trong trình duyệt không yêu cầu cài đặt, trong khi các ứng dụng AIR yêu cầu cài đặt từ file trình cài đặt (Windows và OS X) hoặc App Store thích hợp (iOS và Android). Các ứng dụng AIR có quyền truy cập không hạn chế vào hệ thống lưu trữ và file cục bộ, trong khi các ứng dụng dựa trên trình duyệt chỉ có quyền truy cập vào các file riêng lẻ do người dùng chọn.

Adobe AIR sử dụng một cơ sở mã được chia sẻ với công cụ kết xuất Flash Player và ActionScript 3.0 làm ngôn ngữ lập trình chính. Các ứng dụng phải được xây dựng riêng cho Adobe AIR để sử dụng các tính năng bổ sung được cung cấp, chẳng hạn như cảm ứng đa điểm, tích hợp hệ thống file, tiện ích mở rộng máy khách gốc, tích hợp với Thanh tác vụ hoặc Dock và truy cập vào thiết bị đo gia tốc và GPS. Các ứng dụng HTML5 có thể chạy trên công cụ WebKit có trong AIR.

Các ứng dụng đáng chú ý được xây dựng với Adobe AIR bao gồm eBay Desktop, Pandora One desktop, TweetDeck, Adobe Media Player cũ, Angry Birds, và Machinarium, trong số đa phương tiện khác và ứng dụng quản lý công việc. Theo Adobe, hơn 100.000 ứng dụng độc đáo đã được xây dựng trên AIR và hơn 1 tỷ cài đặt tương tự đã được ghi lại từ người dùng trên toàn thế giới, tính đến tháng 5 năm 2014. Adobe AIR được bình chọn là sản phẩm "phát triển ứng dụng di động tốt nhất" tại Triển lãm điện tử tiêu dùng trong hai năm liên tiếp (CES 2014 và CES 2015).

== Tính năng ==
Sử dụng AIR, nhà phát triển có thể truy cập chức năng bao gồm văn bản, đồ họa vector, đồ họa raster, video, âm thanh, máy ảnh và khả năng micrô. Adobe AIR cũng bao gồm các tính năng bổ sung như tích hợp hệ thống file, tiện ích mở rộng máy khách gốc, tích hợp máy tính để bàn và truy cập vào các thiết bị được kết nối. AIR cho phép các ứng dụng hoạt động với dữ liệu theo nhiều cách khác nhau, bao gồm sử dụng các tệp cục bộ, cơ sở dữ liệu SQLite cục bộ (trong đó AIR có hỗ trợ tích hợp), máy chủ cơ sở dữ liệu hoặc cửa hàng cục bộ được mã hóa có trong AIR.

Các nhà phát triển có thể truy cập chức năng bổ sung bằng cách xây dựng phần mở rộng AIR Native, có thể truy cập chức năng đầy đủ của thiết bị được lập trình bằng ngôn ngữ bản địa.

=== Tính năng máy tính để bàn ===
Trên nền tảng máy tính để bàn, AIR hỗ trợ:

- Quản lý cửa sổ - Mở nhiều cửa sổ, thu nhỏ, tối đa hóa và thay đổi kích thước cửa sổ AIR.
- Thanh menu - Thêm một thanh menu gốc vào cửa sổ AIR, với các menu phụ và các mục menu tùy chỉnh.
- Quản lý file - Khám phá các ổ đĩa, file và thư mục trên PC, tạo và xóa file, đổi file, sao chép và di chuyển file.
- Các ứng dụng bảng điều khiển - Thực thi các ứng dụng gốc với các đối số dòng lệnh và nhận phản hồi thông qua các luồng lỗi I/O & tiêu chuẩn.
- Đa luồng - Quản lý nhiều luồng, để thực thi mã ActionScript 3 trong nền mà không đóng băng giao diện người dùng.
- Trình duyệt web - Xem các trang web HTML có hỗ trợ CSS và JavaScript đầy đủ trong các ứng dụng, với trình duyệt web dựa trên WebKit tích hợp.
- Truy cập bảng tạm - Sao chép hoặc dán văn bản, bitmap hoặc tệp theo chương trình vào bảng tạm hệ thống.
- Kéo và thả - Cho phép người dùng kéo văn bản, ảnh bitmap hoặc tệp vào các ứng dụng AIR.

=== Tính năng di động ===
Trên nền tảng di động, AIR hỗ trợ nhiều tính năng phần cứng di động:

- Kết xuất đồ họa được tăng tốc phần cứng 3D (sử dụng Stage3D)
- Các sự kiện trên màn hình cảm ứng (bao gồm các cử chỉ đa chạm)
- Thiết bị truy cập camera và micrô (bao gồm mã hóa video cho video đã ghi)
- Đầu vào cảm biến gia tốc và vị trí địa lý (GPS hoặc cách khác)
- Kết nối với các giao thức HTTP, TCP và UDP
- "AIR Gamepad" - cho phép các ứng dụng di động đóng vai trò là màn hình phụ và bộ điều khiển cho các trò chơi.

=== Đồ họa 3D ===
Vào năm 2011, việc bổ sung Stage3D cho phép các ứng dụng AIR truy cập vào GPU để tăng tốc phần cứng. Một số khung công tác của bên thứ ba đã được phát triển để xây dựng dựa trên chức năng của Stage3D, bao gồm Starling Framework và Away3D. Các khung này cũng tương thích với AIR và cung cấp các cải tiến hiệu suất quan trọng cho các ứng dụng AIR được xuất bản cho thiết bị di động.

=== AIR Native Extensions ===
Các ứng dụng AIR có thể được tăng cường chức năng với việc sử dụng AIR Native Extensions (ANEs). Tiện ích mở rộng gốc là các thư viện mã trình cắm có chứa mã gốc được gói bằng API ActionScript, cho phép nhà phát triển truy cập các tính năng gốc không thể sử dụng trong AIR, như Apple Game Center hoặc Google Cloud Messaging.

Tiện ích mở rộng có thể được phát triển bởi bất kỳ ai sử dụng các công cụ có sẵn công khai; một số được phân phối miễn phí hoặc thậm chí dưới dạng nguồn mở, trong khi một số khác được bán thương mại.

Các tiện ích mở rộng có thể được lập trình bằng ngôn ngữ bản địa trên mỗi nền tảng, cho phép truy cập vào bộ API nền tảng đầy đủ do nhà phát triển cung cấp. (C++ cho Windows, Java cho Android, Objective-C cho iOS).

== Khả dụng ==
AIR là một công nghệ đa nền tảng và các ứng dụng AIR có thể được đóng gói lại với một vài hoặc không có thay đổi cho nhiều nền tảng máy tính để bàn và thiết bị di động phổ biến. Tùy chọn cài đặt khác nhau tồn tại cho mỗi nền tảng.

Các ứng dụng AIR có thể được xuất bản có hoặc không có thời gian chạy AIR. Các ứng dụng được đóng gói với thời gian chạy AIR có kích thước tệp lớn hơn và được gọi là các ứng dụng "captive runtime". Nếu runtime không được nhúng trong ứng dụng, nó phải được cài đặt riêng.

Vào tháng 1 năm 2009, Adobe tuyên bố rằng có hơn 100 triệu cài đặt Adobe AIR trên toàn thế giới và "phần lớn các cài đặt AIR runtime xảy ra tại thời điểm ứng dụng AIR đầu tiên được cài đặt bởi người dùng". Vào tháng 5 năm 2014, Adobe tuyên bố rằng hơn 100.000 ứng dụng độc đáo đã được xây dựng trên AIR và hơn 1 tỷ cài đặt tương tự đã được ghi lại từ người dùng trên toàn thế giới.

=== Nền tảng máy tính để bàn ===
Phiên bản mới nhất của Adobe AIR, phiên bản 28, chứa Adobe Flash Player 28 và có sẵn cho Windows 7 trở lên, cũng như OS X 10.9 trở lên. Hỗ trợ chính thức cho các bản phân phối Linux trên máy tính để bàn đã ngừng vào tháng 6 năm 2011 với phiên bản 2.6. 
=== Nền tảng di động ===
Các ứng dụng Adobe AIR có thể được xuất bản dưới dạng các ứng dụng điện thoại gốc trên một số hệ điều hành di động nhất định, như Android (ARM Cortex-A8 trở lên ) và Apple iOS.

== Phát triển ứng dụng ==
Adobe AIR chạy các ứng dụng trong một phiên bản chứa Flash Player. Nó chạy các ứng dụng web thông qua công cụ kết xuất WebKit. Nhiều phiên bản của trình duyệt có thể được khởi động trong một ứng dụng AIR, nhưng nội dung JavaScript thực thi với một số giới hạn bảo mật.

AIR không cung cấp quyền truy cập trực tiếp vào các thành phần GUI gốc như thanh điều hướng hoặc điều khiển. Phần mở rộng riêng có thể được sử dụng để truy cập các tài nguyên bản địa bổ sung.

=== Công cụ phát triển ===
==== SDK ====
AIR SDK có sẵn dưới dạng tải xuống độc lập miễn phí cho các nhà phát triển phần mềm để tạo các ứng dụng AIR. Người dùng SDK không cần cài đặt bất kỳ phần mềm thương mại nào để sử dụng SDK, mặc dù có sẵn một số tùy chọn. Các ứng dụng AIR có thể được biên dịch từ dòng lệnh bằng trình biên dịch AIR có trong SDK; trình biên dịch cũng có thể được gọi từ IDE để loại bỏ sự cần thiết của dòng lệnh.

AIR cũng có thể được sử dụng với Adobe Flex. Flex là một bộ sưu tập tích hợp của giao diện người dùng đồ họa có thể tạo kiểu, thao tác dữ liệu và các thành phần mạng và các ứng dụng được xây dựng dựa trên nó được gọi là ứng dụng "Flex". GUI Flex được định nghĩa trong MXML, tương tự như cách Android và Microsoft Visual Studio định nghĩa GUI; tuy nhiên, Flex không cấp quyền truy cập vào các thành phần GUI gốc.

Các ứng dụng AIR được xây dựng mà không có khung Flex cho phép tính linh hoạt và hiệu suất cao hơn và được gọi là các ứng dụng "pure ActionScript". Các video game được xây dựng trên nền tảng AIR thường là các dự án pure ActionScript. Các khung thành phần nguồn mở khác nhau có sẵn cho các dự án ActionScript thuần túy, chẳng hạn như "MadComponents", cung cấp các Thành phần UI dưới định dạng SWF có kích thước file nhỏ hơn đáng kể.

==== Phần mềm ====
Adobe phân phối ba sản phẩm phần mềm thương mại để phát triển ứng dụng AIR trong ActionScript:

- Adobe Flash Builder (phát triển và gỡ lỗi ứng dụng doanh nghiệp)
- Adobe Animate (bộ công cụ đồ họa, hoạt hình & kịch bản)
- Adobe Scout (trình lược tả trực quan để tối ưu hóa hiệu suất)

Các môi trường phát triển của bên thứ ba nhắm đến AIR runtime cũng có sẵn, bao gồm:

- FlashDevelop, IDE Flash ActionScript mã nguồn mở, bao gồm trình gỡ lỗi cho các ứng dụng AIR
- Powerflasher FDT, IDE ActionScript thương mại
- CodeDrive, một phần mở rộng cho Microsoft Visual Studio 2010 để phát triển và gỡ lỗi ActionScript 3

Adobe Flash Builder là công cụ cao cấp để phát triển ứng dụng Flex, vì nó bao gồm trình xây dựng giao diện người dùng kéo và thả tích hợp, không có trong các công cụ cạnh tranh như FlashDevelop.

=== Các ứng dụng JavaScript ===
Adobe cung cấp cho phát triển AIR HTML5 và JavaScript với Adobe Dreamweaver CS5, mặc dù mọi trình soạn thảo hoặc trình soạn thảo HTML khác đều có thể được sử dụng.

Adobe AIR có thể chạy một tập hợp con JavaScript, không có khả năng tự động thực thi mã khi chạy trong hộp cát ứng dụng. Theo Adobe, hạn chế này được thiết kế để ngăn nội dung độc hại từ xa tấn công hệ thống của người dùng. Do hạn chế này, các khung JavaScript sử dụng các hàm JavaScript động như eval () ban đầu không tương thích với Adobe AIR. Tuy nhiên, một số khung bao gồm Bộ công cụ Dojo, jQuery và ExtJS đã được cập nhật để chạy trong hộp cát ứng dụng của Adobe AIR. Một số khung như MooTools đã tương thích. 

Dreamweaver CS4/CS3 yêu cầu một phần mở rộng bổ sung để biên dịch các ứng dụng AIR, cũng như Flash CS3 dưới dạng bản cập nhật.

== Lịch sử phát hành ==
=== "Apollo" 1.0 betas ===
Adobe đã phát hành bản xem trước công khai của AIR (sau đó gọi là Apollo) cùng với bộ phát triển phần mềm (SDK) và phần mở rộng để phát triển các ứng dụng Apollo với khung Flex, vào ngày 19 tháng 3 năm 2007.

Vào ngày 10 tháng 6 năm 2007, Apollo đã được đổi tên thành AIR và bản phát hành beta công khai của runtime đã được đưa ra. Bản beta công khai 2 của AIR SDK đã được phát hành vào ngày 1 tháng 10 năm 2007. Bản beta công khai 3, được phát hành vào ngày 12 tháng 12 năm 2007.

=== 1.x ===
==== Adobe AIR 1.0 ====
Phiên bản 1.0 của Adobe AIR runtime và SDK đã được phát hành vào ngày 25 tháng 2 năm 2008. 

==== Adobe AIR 1.1 ====
Phiên bản 1.1 của Adobe AIR được phát hành vào ngày 16 tháng 6 năm 2008. Bản phát hành này bao gồm một số tính năng mới bao gồm:

- Các ngôn ngữ khác bao gồm tiếng Trung phồn thể, tiếng Trung giản thể, tiếng Pháp, tiếng Đức, tiếng Ý, tiếng Nhật, tiếng Hàn, tiếng Bồ Đào Nha, tiếng Nga và tiếng Tây Ban Nha
- Khả năng bản địa hóa tên, mô tả các thông báo lỗi cơ sở dữ liệu cục bộ của ứng dụng
- Tùy chọn mới cho phép ứng dụng được cập nhật từ chứng chỉ cũ sang chứng chỉ mới trong khi vẫn giữ được danh tính của ứng dụng (ví dụ: từ chứng chỉ tự ký thành chứng chỉ xích)
- Một thuộc tính mới để phát hiện không gian có sẵn trên một ổ đĩa
- Một thuộc tính mới để phát hiện xem trình quản lý cửa sổ của hệ điều hành lưu trữ có cho phép minh bạch không

Ngoài ra, phiên bản 1.1 hoạt động trên Microsoft Windows XP Tablet PC Edition và phiên bản 64 bit của Windows Vista Home Premium, Business, Ultimate và Enterprise.

==== Adobe AIR 1.5 ====
Adobe AIR 1.5 được phát hành vào ngày 17 tháng 11 năm 2008. Các khả năng mới bao gồm:

- Khả năng mã hóa cơ sở dữ liệu cục bộ
- Bao gồm các tính năng của Flash Player 10
- Phiên bản cập nhật của WebKit với các cải tiến hiệu suất do trình thông dịch JavaScript mới
- Năm ngôn ngữ mới bao gồm tiếng Séc, tiếng Hà Lan, tiếng Thụy Điển, tiếng Thổ Nhĩ Kỳ và tiếng Ba Lan
- Một phiên bản Linux đã được phát hành vào ngày 18 tháng 12 năm 2008

==== Adobe AIR 1.5.1 ====
Được phát hành vào ngày 24 tháng 2 năm 2009, AIR 1.5.1 chủ yếu là bản cập nhật tương thích bao gồm sửa lỗi và cập nhật bảo mật.

==== Adobe AIR 1.5.2 ====
Được phát hành vào ngày 30 tháng 7 năm 2009, AIR 1.5.2 đã giới thiệu một số tính năng mới và các vấn đề tương thích. Một số sửa chữa quan trọng bao gồm:

- Khi sử dụng chế độ tương tác toàn màn hình, một ứng dụng sử dụng không gian tên 1.5.2 có thể ghi lại sự kiện keyDown và gọi phương thức notifyDefault () của sự kiện
- Bây giờ nội dung SWF được nhúng trong bộ chứa HTML có thể được hiển thị với một số cài đặt wmode nhất định.

==== Adobe AIR 1.5.3 ====
Adobe AIR 1.5.3 được phát hành vào ngày 8 tháng 12 năm 2009. Nó bao gồm các bản sửa lỗi cho một số vấn đề liên quan đến bảo mật và tương thích. Trình quản lý máy tính để bàn BBC iPlayer v1.5.15695.18135 là phiên bản đầu tiên sử dụng AIR 1.5.3.

=== 2.x ===
==== AIR 2.0 ====
Bản beta công khai Adobe AIR 2 được phát hành vào ngày 16 tháng 11 năm 2009, sau đó là bản beta 2 vào ngày 2 tháng 2 năm 2010 và ứng cử viên phát hành vào ngày 11 tháng 5 năm 2010. Ngoài ra, Adobe AIR cho Android đã được công bố vào ngày 12 tháng 2 năm 2010. AIR 2 đã được phát hành chính thức cho Windows, Mac OS và Linux vào ngày 10 tháng 6 năm 2010 và Android vào ngày 8 tháng 10 năm 2010. Nó giảm khả năng chạy trên máy Mac PowerPC.

==== AIR 2.5 ====
Adobe AIR 2.5 đã được phát hành vào ngày 24 tháng 10 năm 2010 tại hội nghị Adobe MAX 2010.

==== AIR 2.6 ====
Adobe AIR 2.6 được phát hành vào ngày 24 tháng 2 năm 2011 cho các thiết bị Android. Một bản cập nhật khác được phát hành vào ngày 22 tháng 3 năm 2011 để cập nhật khả năng tương tác của iOS.

==== AIR 2.7 ====
Adobe AIR 2.7 được phát hành vào ngày 14 tháng 6 năm 2011 Khả năng chạy trên Linux đã bị loại bỏ.

=== 3.x ===
==== AIR 3.0 ====
Adobe phát hành Adobe AIR 3.0 vào ngày 3 tháng 10 năm 2011 AIR 3.0 đã thêm khả năng chạy trên kiến trúc CPU 64 bit gốc và sử dụng kết xuất đồ họa được tăng tốc phần cứng, thời gian chạy bị giam cầm, tiện ích mở rộng, định dạng hình ảnh JPEG-XR, nén LZMA cho các tệp SWF và mã hóa H.264.

==== AIR 3.1 ====
Adobe phát hành Adobe AIR 3.1 vào ngày 11 tháng 11 năm 2011.

==== AIR 3.2 ====
Adobe phát hành Adobe AIR 3.2 vào ngày 28 tháng 3 năm 2012.

==== AIR 3,3 ====
Adobe phát hành Adobe AIR 3.3 vào ngày 8 tháng 6 năm 2012.

==== AIR 3,4 ====
Adobe phát hành Adobe AIR 3.4 vào ngày 21 tháng 8 năm 2012.

==== AIR 3.5 ====
Adobe phát hành Adobe AIR 3.5 vào ngày 6 tháng 11 năm 2012.

==== AIR 3.6 ====
Adobe đã phát hành Adobe AIR 3.6 vào ngày 12 tháng 2 năm 2013.

==== AIR 3.7 ====
Adobe đã phát hành Adobe AIR 3.7 vào ngày 9 tháng 4 năm 2013.

==== AIR 3,8 ====
Adobe đã phát hành Adobe AIR 3.8 vào ngày 24 tháng 7 năm 2013.

==== AIR 3.9 ====
Adobe đã phát hành Adobe AIR 3.9 vào ngày 8 tháng 10 năm 2013.

==== AIR 4.0 ====
Adobe phát hành Adobe AIR 4.0 vào ngày 14 tháng 1 năm 2014. Nó được phát hành bản beta vào ngày 30 tháng 10 năm 2013, tên mã là Jones.

=== Số phiên bản được đồng bộ hóa với Flash Player ===
Adobe đã áp dụng sơ đồ đánh số mới cho các phiên bản sản phẩm Flash để đồng bộ hóa chúng với đánh số phiên bản của Flash Player, bắt đầu từ Flash Player 13.

==== AIR 13.0 ====
Adobe đã phát hành Adobe AIR 13.0 vào ngày 8 tháng 4 năm 2014. Nó được đánh số 13 để tự đồng bộ hóa với đánh số phiên bản của Flash Player.

==== AIR 14.0 ====
Adobe đã phát hành Adobe AIR 14.0 vào ngày 10 tháng 6 năm 2014.

==== AIR 15.0 ====
Adobe phát hành Adobe AIR 15.0 vào ngày 9 tháng 9 năm 2014. Nó bao gồm các cải tiến cho công nghệ Stage3D, cải tiến AIR Gamepad và công cụ đóng gói mới cho các ứng dụng iOS giúp giảm thời gian biên dịch từ vài phút xuống vài giây.

==== AIR 16.0 ====
Adobe phát hành Adobe AIR 16.0 vào ngày 13 tháng 1 năm 2015.

==== AIR 17.0 ====
Adobe phát hành Adobe AIR 17.0 vào ngày 12 tháng 3 năm 2015.

==== AIR 18.0 ====
Adobe phát hành Adobe AIR 18.0 vào ngày 9 tháng 6 năm 2015.

==== AIR 19.0 ====
Adobe phát hành Adobe AIR 1.0 vào ngày 21 tháng 9 năm 1900.

==== AIR 20.0 ====
Adobe phát hành Adobe AIR 20.0 vào ngày 8 tháng 12 năm 2015. Android SDK (API cấp 21) đã được nâng cấp trong AIR Runtime, các ứng dụng được xây dựng bằng AIR SDK này và sau đó sẽ chỉ hỗ trợ hệ điều hành Android 4.0 trở lên.

==== AIR 21.0 ====
Adobe phát hành Adobe AIR 21.0 vào ngày 10 tháng 3 năm 2016.

==== AIR 22.0 ====
Adobe phát hành Adobe AIR 22.0 vào ngày 16 tháng 6 năm 2016.

==== AIR 23.0 ====
Adobe phát hành Adobe AIR 23.0 vào ngày 13 tháng 9 năm 2016.

==== AIR 24.0 ====
Adobe phát hành Adobe AIR 24.0 vào ngày 13 tháng 12 năm 2016.

==== AIR 25.0 ====
Adobe đã phát hành Adobe AIR 25.0 vào ngày 14 tháng 3 năm 2017.

==== AIR 26.0 ====
Adobe đã phát hành Adobe AIR 26.0 vào ngày 13 tháng 6 năm 2017.

==== AIR 27.0 ====
Adobe đã phát hành Adobe AIR 27.0 vào ngày 12 tháng 9 năm 2017.

==== AIR 28.0 ====
Adobe đã phát hành Adobe AIR 28.0 vào ngày 12 tháng 12 năm 2017.

==== AIR 29.0 ====
Adobe đã phát hành Adobe AIR 29.0 vào ngày 13 tháng 3 năm 2018.

==== AIR 30.0 ====
Adobe đã phát hành Adobe AIR 30.0 vào ngày 7 tháng 6 năm 2018.

==== AIR 31.0 ====
Adobe đã phát hành Adobe AIR 31.0 vào ngày 11 tháng 9 năm 2018.

==== AIR 32.0 ====
Adobe đã phát hành Adobe AIR 32.0 vào ngày 11 tháng 12 năm 2018.

==== AIR 33.0 ====
Adobe đã phát hành Adobe AIR 33.0 vào ngày 11 tháng 12 năm 2020.