HarmonyOS হল Huawei-এর মালিকানাধীন অপারেটিং সিস্টেম যা ক্রস-প্ল্যাটফর্ম আর্কিটেকচার সমর্থন সহ বিতরণকৃত মাইক্রোকার্নেলের উপর নির্মিত। অ্যাপ্লিকেশন ডেভেলপমেন্ট ArkTS এবং C++-এ DevEco Studio পরিবেশে ArkUI ফ্রেমওয়ার্কের সাথে করা হয়। সিস্টেমটি স্মার্টফোন, ট্যাবলেট, ঘড়ি এবং IoT ডিভাইসগুলির নিরবচ্ছিন্ন একীকরণের জন্য ডিজাইন করা হয়েছে। Huawei-এর মতে, HarmonyOS সারা বিশ্বে 700 মিলিয়নেরও বেশি ডিভাইসে ইনস্টল করা আছে।
মূল বিষয়
HarmonyOS হল একটি বিতরণকৃত অপারেটিং সিস্টেম যা Huawei দ্বারা তৈরি এবং প্রথম 2019 সালে কোম্পানির নতুন ডিভাইসগুলিতে Google পরিষেবাগুলিতে অ্যাক্সেস সীমাবদ্ধতার প্রতিক্রিয়া হিসাবে ঘোষণা করা হয়েছিল। HarmonyOS তার নিজস্ব মাইক্রোকার্নেলে নির্মিত, যা Linux থেকে আলাদা, এবং ডিভাইসগুলির মধ্যে নিরবচ্ছিন্ন অপারেশনের জন্য ডিজাইন করা হয়েছে: স্মার্টফোন, ট্যাবলেট, স্মার্টওয়াচ, টেলিভিশন, অটোমোটিভ সিস্টেম এবং IoT ডিভাইস।
Huawei (HarmonyOS ইকোসিস্টেম রিপোর্ট, 2026) অনুসারে, সিস্টেমটি 700 মিলিয়নেরও বেশি ডিভাইসে ইনস্টল করা আছে, যার মধ্যে 300 মিলিয়ন স্মার্টফোন রয়েছে। চীনা বাজার 95% ইনস্টলেশনের জন্য দায়ী। HarmonyOS 5.0 (NEXT, 2024) থেকে শুরু করে, সিস্টেমটি Android AOSP সামঞ্জস্যতা সম্পূর্ণরূপে পরিত্যাগ করেছে — সমস্ত অ্যাপ্লিকেশন ArkTS বা C++-এ ArkUI ব্যবহার করে লিখতে হবে।
HarmonyOS-এর মূল বৈশিষ্ট্য হল এর বিতরণকৃত আর্কিটেকচার: একটি অ্যাপ্লিকেশন একসাথে একাধিক ডিভাইসে চলতে পারে, স্ক্রিনের মধ্যে ইন্টারফেস স্থানান্তর করতে পারে। উদাহরণস্বরূপ, ব্যবহারকারী ফোনে নেভিগেশন শুরু করে যখন ইন্টারফেস গাড়ির স্ক্রিনে প্রদর্শিত হয় — পুনঃকম্পাইলেশন বা অতিরিক্ত কোড ছাড়াই।
HarmonyOS 1.0 (2019) — স্মার্ট স্ক্রিনের জন্য প্রথম সংস্করণ, স্মার্টফোনের জন্য নয়। HarmonyOS 2.0 (2021) — স্মার্টফোন, ট্যাবলেট এবং ঘড়ির জন্য উন্মুক্ত, AOSP অ্যাপ্লিকেশনের জন্য সমর্থন। HarmonyOS 3.0 (2022) — উন্নত বিতরণকৃত আর্কিটেকচার, Super Device, Multiscreen Collaboration। HarmonyOS 4.0 (2023) — ArkUI 3.0, Live View, উন্নত পারফরম্যান্স। HarmonyOS NEXT (5.0, 2024) — AOSP-এর সম্পূর্ণ পরিত্যাগ, শুধুমাত্র নেটিভ HarmonyOS অ্যাপ্লিকেশন।
| HarmonyOS সংস্করণ | বছর | মূল উদ্ভাবন |
|---|---|---|
| 1.0 | 2019 | স্মার্ট স্ক্রিন TV-র জন্য প্রথম সংস্করণ |
| 2.0 | 2021 | স্মার্টফোন, ট্যাবলেট, AOSP সামঞ্জস্যতা |
| 3.0 | 2022 | Super Device, Multiscreen Collaboration |
| 4.0 | 2023 | ArkUI 3.0, Live View, Celia Voice Assistant |
| NEXT (5.0) | 2024 | AOSP-এর সম্পূর্ণ পরিত্যাগ, মাইক্রোকার্নেল, শুধুমাত্র ArkTS |
HarmonyOS আর্কিটেকচার Android এবং iOS থেকে মৌলিকভাবে আলাদা। একশিলা Linux কার্নেলের পরিবর্তে, HarmonyOS তার নিজস্ব মাইক্রোকার্নেল ব্যবহার করে যা ন্যূনতম সুবিধাপ্রাপ্ত ফাংশন বাস্তবায়ন করে: মেমরি ব্যবস্থাপনা, প্রক্রিয়া শিডিউলিং এবং আন্তঃপ্রক্রিয়া যোগাযোগ। অন্যান্য সমস্ত পরিষেবা ব্যবহারকারী স্থানে চলে।
HarmonyOS মাইক্রোকার্নেলে প্রায় 10,000 লাইন কোড রয়েছে (Linux কার্নেলে 20 মিলিয়নেরও বেশি)। ছোট কোডবেস মানে ছোট আক্রমণ পৃষ্ঠ। সিস্টেম আনুষ্ঠানিক যাচাইকরণ ব্যবহার করে — কার্নেল কোড শুদ্ধতার গাণিতিক প্রমাণ। HarmonyOS বায়োমেট্রিক্স, পেমেন্ট এবং এনক্রিপশন কীগুলির জন্য হার্ডওয়্যার স্তরে Trusted Execution Environment (TEE) সমর্থন করে। আন্তঃপ্রক্রিয়া যোগাযোগ IPC-র মাধ্যমে বাস্তবায়িত, যা Android-এ Binder-এর চেয়ে 5 গুণ বেশি কার্যকর।
HarmonyOS আর্কিটেকচার চারটি স্তর নিয়ে গঠিত: Kernel Subsystem (মাইক্রোকার্নেল + ড্রাইভার), System Service Layer (সিস্টেম পরিষেবা: বিতরণকৃত ডেটা, ফাইল সিস্টেম, নিরাপত্তা), Framework Layer (ArkUI, মাল্টিমিডিয়া, টেলিফোনি, AI পরিষেবা), এবং Application Layer (ব্যবহারকারী অ্যাপ্লিকেশন)। প্রতিটি স্তর IPC-র মাধ্যমে নীচের স্তর থেকে বিচ্ছিন্ন।
HarmonyOS একটি বিতরণকৃত ফাইল সিস্টেম (DFS) সরবরাহ করে যা সমস্ত ব্যবহারকারী ডিভাইসের স্টোরেজকে একটি একক ভার্চুয়াল স্পেসে একীভূত করে। একটি অ্যাপ্লিকেশন ডিভাইস নির্দিষ্ট না করেই URI-র মাধ্যমে ফাইল অ্যাক্সেস করে — সিস্টেম অনুরোধটি সেই ডিভাইসে রুট করে যেখানে ফাইলটি শারীরিকভাবে সংরক্ষিত। DFS এন্ড-টু-এন্ড এনক্রিপশন এবং ঘন ঘন ব্যবহৃত ডেটার স্বয়ংক্রিয় প্রতিলিপি সমর্থন করে।
// HarmonyOS বিতরণকৃত ফাইল সিস্টেমের সাথে কাজ করা
#include <dfs/storage_manager.h>
#include <uri/uri_helper.h>
using namespace OHOS::Storage;
// বিতরণকৃত ডিভাইসে ফাইল URI প্রাপ্ত করা
Uri GetDistributedFileUri(const std::string& localPath) {
DistributedFileManager manager;
auto deviceList = manager.GetOnlineDevices();
for (const auto& device : deviceList) {
Uri uri = manager.GetFileUri(device.deviceId, localPath);
if (uri.IsValid()) {
return uri; // একটি ডিভাইসে ফাইল পাওয়া গেছে
}
}
return Uri::Empty();
}
// দূরবর্তী ডিভাইস থেকে ডেটা পড়া
std::string ReadDistributedFile(const Uri& uri) {
DistributedFile file(uri);
if (!file.Open(OpenMode::READ_ONLY)) {
return "";
}
char buffer[4096];
size_t bytesRead = file.Read(buffer, sizeof(buffer));
file.Close();
return std::string(buffer, bytesRead);
}উদাহরণে, DistributedFileManager ব্যবহারকারীর সমস্ত অনলাইন ডিভাইসে একটি ফাইল অনুসন্ধান করে এবং একটি বিতরণকৃত URI ফেরত দেয়। DistributedFile অ্যাপ্লিকেশনের জন্য স্বচ্ছভাবে, IPC-র মাধ্যমে দূরবর্তী ডিভাইসে শারীরিকভাবে ফাইল খোলে। ডেভেলপারের জানার প্রয়োজন নেই যে ডেটা কোথায় সংরক্ষিত — সিস্টেম স্বয়ংক্রিয়ভাবে অনুরোধ রুট করে।
ArkUI হল Huawei দ্বারা বিকশিত HarmonyOS-এর ঘোষণামূলক UI ফ্রেমওয়ার্ক। ইন্টারফেসটি প্রতিক্রিয়াশীল ডেটা বাইন্ডিং সহ উপাদানগুলির একটি শ্রেণিবিন্যাস হিসাবে বর্ণিত হয়, যা SwiftUI (iOS) বা Jetpack Compose (Android)-এর মতো। ArkTS হল অতিরিক্ত স্ট্যাটিক টাইপিং এবং @Component, @State, @Prop, @Link ডেকোরেটরের মাধ্যমে ArkUI-র সাথে একীকরণ সহ TypeScript-ভিত্তিক একটি ডেভেলপমেন্ট ভাষা।
ArkTS UI ফ্রেমওয়ার্ক সামঞ্জস্যের সাথে TypeScript-কে প্রসারিত করে: @Component — একটি UI উপাদান ঘোষণার জন্য ডেকোরেটর, build() — একটি বাধ্যতামূলক পদ্ধতি যা UI উপাদানগুলির একটি গাছ ফেরত দেয়, @State — একটি প্রতিক্রিয়াশীল পরিবর্তনশীল যার পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে উপাদানটি পুনরায় আঁকে, @Prop — পিতামাতার থেকে একটি ইনপুট বৈশিষ্ট্য, @Link — দ্বি-মুখী বাইন্ডিং। সমস্ত ArkUI উপাদান পরিবর্তনকারী (.width, .height, .backgroundColor) সহ চেইনিং সিনট্যাক্স ব্যবহার করে।
// ArkTS — ArkUI-তে ব্যবহারকারী প্রোফাইল স্ক্রিন
@Component
struct ProfileScreen {
@State userName: string = "আনা পেট্রোভা";
@State avatarUrl: Resource = $r("media.avatar_default");
@State isLoading: boolean = false;
@Prop onEditClick: () => void;
aboutToAppear(): void {
this.loadUserData();
}
async loadUserData(): Promise<void> {
this.isLoading = true;
try {
const data = await UserService.getProfile();
this.userName = data.name;
this.avatarUrl = data.avatarUrl;
} catch (error) {
console.error("লোডিং ত্রুটি", error);
} finally {
this.isLoading = false;
}
}
build(): void {
Column() {
if (this.isLoading) {
LoadingProgress()
.width('50%')
.height('50%');
} else {
Stack({ alignContent: Alignment.Center }) {
Image(this.avatarUrl)
.width('100%')
.height('100%')
.objectFit(ImageFit.Cover);
Column() {
Text(this.userName)
.fontSize('24fp')
.fontWeight(FontWeight.Bold)
.fontColor(Color.White);
Button("সম্পাদনা করুন", {
type: ButtonType.Capsule,
stateEffect: true
})
.onClick(() => {
this.onEditClick();
})
.margin({ top: '12vp' });
}
.alignItems(HorizontalAlign.Center)
.width('100%');
}
.width('100%')
.height('300vp');
}
}
.padding('16vp')
.width('100%')
.height('100%');
}
}
// অ্যাপ্লিকেশন প্রবেশ বিন্দু
@Entry
@Component
struct MainApp {
build(): void {
Column() {
ProfileScreen({
onEditClick: () => {
console.info("প্রোফাইল এডিটর খুলুন");
}
});
}
.width('100%')
.height('100%');
}
}ArkTS-এ ProfileScreen উপাদানটি প্রদর্শন করে: প্রতিক্রিয়াশীল চলকের জন্য @State, ইনপুট কলব্যাকের জন্য @Prop, Column/Stack/Text/Image/Button মৌলিক UI উপাদান হিসাবে, async/await-এর মাধ্যমে অ্যাসিঙ্ক্রোনাস ডেটা লোডিং। লোডিংয়ের সময় LoadingProgress প্রদর্শিত হয়। সমস্ত আকার vp (ভার্চুয়াল পিক্সেল) এ নির্দিষ্ট — iOS-এ pt বা Android-এ dp-এর মতো অভিযোজিত ইউনিট।
ArkUI স্ক্রিন প্রস্থের সাথে সম্পর্কিত Breakpoints (xs, sm, md, lg, xl) সিস্টেমের মাধ্যমে রেসপন্সিভ ডিজাইন সমর্থন করে। ফোন থেকে ট্যাবলেট বা ঘড়িতে স্যুইচ করার সময় উপাদানগুলি স্বয়ংক্রিয়ভাবে পুনর্বিন্যস্ত হয়। GridRow এবং GridCol হল অভিযোজিত ধারক যা ব্রেকপয়েন্টের উপর নির্ভর করে কলামের সংখ্যা পরিবর্তন করে। আকার ইউনিট: vp (ভার্চুয়াল পিক্সেল), fp (ফন্ট পিক্সেল — ফন্ট সেটিংসের সাথে স্কেল), lpx (ঘড়ির জন্য লজিক্যাল পিক্সেল)।
| ডিভাইসের ধরন | ব্রেকপয়েন্ট | কর্ণ | ইউনিট |
|---|---|---|---|
| স্মার্টওয়াচ | xs | 1.2"–2.0" | lpx |
| স্মার্টফোন | sm | 4.7"–6.9" | vp |
| ট্যাবলেট | md | 7.0"–12.0" | vp |
| ল্যাপটপ | lg | 13.0"–16.0" | vp |
| মনিটর / TV | xl | 24.0"–65.0" | vp |
DevEco Studio হল HarmonyOS-এর জন্য অফিসিয়াল ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (IDE), যা IntelliJ IDEA Community Edition-এর উপর ভিত্তি করে। এতে ArkTS এবং C++ সমর্থন সহ কোড এডিটর, একটি ভিজ্যুয়াল ArkUI এডিটর (ড্র্যাগ-এন্ড-ড্রপ), একটি HarmonyOS ডিভাইস এমুলেটর, তাত্ক্ষণিক UI দেখার জন্য Preview এবং পারফরম্যান্স বিশ্লেষণের জন্য Profiler অন্তর্ভুক্ত রয়েছে।
DevEco Studio-তে QEMU-ভিত্তিক একটি এমুলেটর অন্তর্ভুক্ত রয়েছে যা স্মার্টফোন (বিভিন্ন স্ক্রিন আকার), ট্যাবলেট, ঘড়ি এবং টেলিভিশন সমর্থন করে। এমুলেটর একটি বিতরণকৃত পরিবেশ অনুকরণ করে: আপনি একাধিক ভার্চুয়াল ডিভাইস চালাতে পারেন এবং ক্রস-ডিভাইস মিথস্ক্রিয়া পরীক্ষা করতে পারেন। এমুলেটরের জন্য ভার্চুয়ালাইজেশন প্রয়োজন (Windows-এ Hyper-V, Linux-এ KVM)।
ArkUI Preview হল বিল্ড বা এমুলেটর শুরু না করেই তাত্ক্ষণিক UI দেখার বৈশিষ্ট্য। কোড পরিবর্তনগুলি 1-2 সেকেন্ডের মধ্যে Preview-তে প্রদর্শিত হয়। সমস্ত মানক উপাদান এবং অ্যানিমেশন সমর্থিত। Preview অভিযোজনযোগ্যতা পরীক্ষার জন্য বিভিন্ন ব্রেকপয়েন্টের সাথে কাজ করে। Live Preview হার্ডওয়্যারে পরীক্ষার জন্য USB বা Wi-Fi-এর মাধ্যমে একটি বাস্তব ডিভাইসের সাথে সংযুক্ত হয়।
HarmonyOS SDK-তে অন্তর্ভুক্ত রয়েছে: ArkUI (UI উপাদান), Multimedia Kit (অডিও/ভিডিও ক্যাপচার এবং প্লেব্যাক), Connectivity Kit (Bluetooth, Wi-Fi, NFC), Location Kit(জিওলোকেশন), Sensor Kit (সেন্সর), AI Kit (Huawei NPU-তে অন-ডিভাইস ইনফারেন্স সহ ML Kit)। API সংস্করণ: API 9 (HarmonyOS 3.x), API 10 (4.x), API 11 (NEXT)।
// Multimedia Kit-এর মাধ্যমে HarmonyOS-এ ক্যামেরা আরম্ভকরণ
import multimedia.CameraManager;
import multimedia.CameraInput;
import multimedia.PreviewOutput;
@Component
struct CameraView {
@State isPreviewActive: boolean = false;
cameraManager: CameraManager = CameraManager.getInstance();
cameraInput?: CameraInput;
previewOutput?: PreviewOutput;
async startPreview(): Promise<void> {
try {
// ক্যামেরা অনুমতির অনুরোধ
const granted = await Permissions.request("ohos.permission.CAMERA");
if (!granted) return;
// ক্যামেরা প্রাপ্তি (0 — পিছনে, 1 — সামনে)
const camera = await this.cameraManager.getCamera(0);
// ক্যামেরা ইনপুট তৈরি
this.cameraInput = await this.cameraManager.createCameraInput(camera);
await this.cameraInput.open();
// Surface-এ প্রিভিউ শুরু (ArkUI XComponent)
this.previewOutput = await this.cameraManager.createPreviewOutput({
width: 1920,
height: 1080
});
await this.previewOutput.start();
this.isPreviewActive = true;
} catch (error) {
console.error("Camera error: " + error.message);
}
}
async stopPreview(): Promise<void> {
await this.previewOutput?.stop();
await this.cameraInput?.close();
this.isPreviewActive = false;
}
}CameraView উপাদানটি Multimedia Kit-এর সাথে কাজ প্রদর্শন করে: Permissions.request-এর মাধ্যমে অনুমতি অনুরোধ, CameraManager-এর মাধ্যমে ক্যামেরা প্রাপ্তি, CameraInput এবং PreviewOutput তৈরি। ArkUI Surface (XComponent-এর মাধ্যমে) ভিডিও স্ট্রিম প্রদর্শন করে। try/catch-এর মাধ্যমে ত্রুটি ব্যবস্থাপনা সহ সমস্ত ক্রিয়াকলাপ অ্যাসিঙ্ক্রোনাস।
HarmonyOS-এর বিতরণকৃত আর্কিটেকচার প্রতিযোগীদের থেকে প্রধান পার্থক্য। একটি অ্যাপ্লিকেশন একাধিক পারমাণবিক পরিষেবা (Atomic Services) নিয়ে গঠিত হতে পারে, প্রতিটি সর্বোত্তম ডিভাইসে চলছে। ব্যবহারকারী একটি ডিভাইসে কাজ শুরু করে এবং প্রসঙ্গ না হারিয়ে অন্যটিতে চালিয়ে যায়।
Atomic Service হল HarmonyOS-এ ন্যূনতম স্থাপনার ইউনিট। প্রতিটি পরিষেবা এক বা একাধিক Ability বাস্তবায়ন করে (Android-এ Activity-র অনুরূপ)। Page Ability — UI সহ একটি স্ক্রিন, Service Ability — একটি পটভূমি কাজ, Data Ability — ডেটা অ্যাক্সেস। একটি অ্যাপ্লিকেশন Ability অন্য ডিভাইসে অর্পণ করতে পারে: উদাহরণস্বরূপ, UI ট্যাবলেটে প্রদর্শিত হয় যখন AI প্রসেসিং NPU সহ ফোনে চলে।
বিতরণকৃত ডেটা ব্যবস্থাপনা (DDM) সিস্টেম ডিভাইসগুলির মধ্যে অ্যাপ্লিকেশন অবস্থা সিঙ্ক্রোনাইজ করে। DDM বিতরণকৃত ডেটা অবজেক্ট ব্যবহার করে — প্রতিক্রিয়াশীল অবজেক্ট যা সমস্ত ব্যবহারকারী ডিভাইসে স্বয়ংক্রিয়ভাবে প্রতিলিপি হয়। একটি ডিভাইসে ডেটা পরিবর্তন তাত্ক্ষণিকভাবে অন্যগুলিতে প্রতিফলিত হয়। DDM এনক্রিপশন সমর্থন করে এবং নেটওয়ার্ক সংযোগ (Bluetooth, Wi-Fi, সেলুলার ডেটা) বিবেচনা করে।
| প্রযুক্তি | উদ্দেশ্য | সদৃশ |
|---|---|---|
| Distributed Data Objects | ডিভাইসগুলির মধ্যে প্রতিক্রিয়াশীল ডেটা সিঙ্ক্রোনাইজেশন | iCloud / Firebase |
| Distributed File System | ডিভাইস জুড়ে একীভূত ফাইল স্থান | iCloud Drive |
| Ability Distribute | অন্য ডিভাইসে স্ক্রিন অর্পণ | — |
| Super Device | একটি সিস্টেমে ডিভাইস একীভূত করা | Apple Continuity |
| Multiscreen Collaboration | একাধিক স্ক্রিনে একটি অ্যাপ্লিকেশন নিয়ে কাজ করা | Sidecar (iPad + Mac) |
Super Device — একটি HarmonyOS বৈশিষ্ট্য যা 7টি Huawei ডিভাইসকে একটি একক কম্পিউটিং পরিবেশে একীভূত করতে দেয়। ব্যবহারকারী Super Device ইন্টারফেসে ডিভাইস আইকন টেনে নেয়: স্পিকার অডিও আউটপুট হয়ে যায়, ট্যাবলেট দ্বিতীয় স্ক্রিন হয়ে যায়, ঘড়ি ফোনে ফিটনেস অ্যাপের জন্য হার্ট রেট মনিটর হয়ে যায়। সমস্ত ডিভাইস 5 ms-এর কম বিলম্বে Distributed Bus-এর মাধ্যমে সিঙ্ক হয়।
Huawei AppGallery হল HarmonyOS-এর অফিসিয়াল অ্যাপ স্টোর, Google Play এবং App Store-এর পরে বিশ্বে তৃতীয় বৃহত্তম। Huawei (2026) অনুসারে, AppGallery-তে 580 মিলিয়নেরও বেশি মাসিক সক্রিয় ব্যবহারকারী রয়েছে। ব্যক্তিদের জন্য ডেভেলপার নিবন্ধন বিনামূল্যে (Apple-এর $99-এর বিপরীতে)।
ডেভেলপার DevEco Studio (.hap ফর্ম্যাট — HarmonyOS Ability Package) এ অ্যাপ্লিকেশন তৈরি করে। AppGallery Connect-এর মাধ্যমে প্রকাশনা: HAP ফাইল আপলোড করুন, বিবরণ পূরণ করুন (নাম, আইকন, স্ক্রিনশট), মূল্য নির্ধারণ মডেল কনফিগার করুন। গড় মডারেশন সময় 1-3 কার্যদিবস। Huawei নিরাপত্তা (স্ট্যাটিক বিশ্লেষণ), API সামঞ্জস্যতা এবং নীতি সম্মতি পরীক্ষা করে।
AppGallery সমর্থন করে: পেইড অ্যাপ্লিকেশন (Huawei কমিশন 15-30%), সাবস্ক্রিপশন (15% কমিশন), Huawei Ads Kit-এর মাধ্যমে বিজ্ঞাপন এবং IAP Kit-এর মাধ্যমে ইন-অ্যাপ ক্রয়। Huawei Pay হল চীনা বাজারের জন্য একটি পেমেন্ট গেটওয়ে যা Alipay এবং WeChat Pay সমর্থন করে। আন্তর্জাতিক ডেভেলপাররা PayPal বা ব্যাংক স্থানান্তরের মাধ্যমে অর্থপ্রদান পান।
| প্রয়োজনীয়তা | বিবরণ |
|---|---|
| ফর্ম্যাট | HAP (HarmonyOS Ability Package) বা App Pack (একাধিক HAP) |
| স্বাক্ষর | DevEco Studio-র মাধ্যমে ডিজিটাল স্বাক্ষর (Huawei সার্টিফিকেট) |
| লক্ষ্য API | HarmonyOS 3.x-এর জন্য API 9+, HarmonyOS NEXT-এর জন্য API 11+ |
| আকার | App Pack-এর জন্য 4 GB পর্যন্ত, বেস HAP-এর জন্য 200 MB পর্যন্ত |
| ভাষা | চীনের জন্য সরলীকৃত চীনা ভাষার বাধ্যতামূলক সমর্থন |
| নীতি | EU-এর জন্য Huawei ডেভেলপার নিয়ম এবং GDPR মেনে চলা |
HMS Core হল পরিষেবাগুলির একটি সেট যা Google ছাড়া Huawei ডিভাইসগুলিতে Google Play Services প্রতিস্থাপন করে। অন্তর্ভুক্ত: Push Kit (পুশ বিজ্ঞপ্তি), Map Kit (নেভিগেশন সহ মানচিত্র), Location Kit (জিওলোকেশন), Ads Kit (বিজ্ঞাপন), Analytics Kit (বিশ্লেষণ), Account Kit (Huawei ID-এর মাধ্যমে অনুমোদন)। HMS Core HarmonyOS সহ ডিভাইস এবং Huawei Android ডিভাইসগুলিতে (AppGallery-র মাধ্যমে) উপলব্ধ।
সচরাচর জিজ্ঞাসা
প্রাথমিক ভাষা হল ArkTS, ArkUI একীকরণ সহ TypeScript-এর একটি এক্সটেনশন। পারফরম্যান্স-গুরুত্বপূর্ণ মডিউলের জন্য Native API (NAPI)-র মাধ্যমে C++ ব্যবহার করা হয়। Java HarmonyOS 3-4-তে লিগ্যাসি অ্যাপ্লিকেশনের জন্য সমর্থিত। HarmonyOS NEXT থেকে শুরু হওয়া সমস্ত নতুন প্রকল্পের জন্য Huawei ArkTS এবং C++ সুপারিশ করে।
HarmonyOS তার নিজস্ব মাইক্রোকার্নেল (Linux নয়), বিতরণকৃত ক্রস-ডিভাইস আর্কিটেকচার, একীভূত DFS ফাইল সিস্টেম এবং প্রতিক্রিয়াশীল DDM সিঙ্ক্রোনাইজেশন ব্যবহার করে। HarmonyOS NEXT সম্পূর্ণরূপে AOSP সামঞ্জস্যতা পরিত্যাগ করেছে এবং APK অ্যাপ্লিকেশন সমর্থন করে না। সমস্ত অ্যাপ্লিকেশন ArkTS বা C++-এ লেখা হয়।
ArkUI হল ArkTS এবং C++-এ HarmonyOS-এর জন্য একটি ঘোষণামূলক UI ফ্রেমওয়ার্ক। ইন্টারফেসটি @Component-এর মাধ্যমে build() পদ্ধতি এবং প্রতিক্রিয়াশীল চলক (@State) সহ বর্ণিত হয়। ArkUI Breakpoints (xs-xl), GridRow/GridCol এবং GPU গণনার জন্য কাস্টম Canvas রেন্ডারিংয়ের মাধ্যমে অভিযোজিত লেআউট সমর্থন করে।
অফিসিয়াল স্টোর হল Huawei AppGallery। ডেভেলপার নিবন্ধন বিনামূল্যে। অ্যাপ্লিকেশন HAP (HarmonyOS Ability Package) বা App Pack ফর্ম্যাটে বিতরণ করা হয়। মডারেশন 1-3 দিন সময় নেয়। স্টোর কমিশন মুদ্রায়ন মডেলের উপর নির্ভর করে 15-30%। চীনের জন্য সরলীকৃত চীনা সমর্থন বাধ্যতামূলক।
DevEco Studio হল IntelliJ IDEA-র উপর ভিত্তি করে HarmonyOS-এর জন্য অফিসিয়াল IDE। এতে ArkTS/C++ এডিটর, ভিজ্যুয়াল ArkUI এডিটর, QEMU-ভিত্তিক এমুলেটর, তাত্ক্ষণিক UI দেখার জন্য Preview, CPU/মেমরির জন্য Profiler এবং CI/CD-র জন্য AppGallery Connect-এর সাথে একীকরণ অন্তর্ভুক্ত রয়েছে। Windows, macOS এবং Linux সমর্থন করে।
সারাংশ
আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব
IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।
আরও পড়ুন