Mobile ilovalar yaratishda Dart dasturlash tilining o'rni va ahamiyati Ermonov Sherzod Ibrayim o'g'li Guliston Davlat Universiteti magstranti Anotatsiya


extern "C" JNIEXPORT jstring JNICALL Java_com_mindorks_androidndkexample_MainActivity_stringFromJNI


Download 1.23 Mb.
bet4/5
Sana14.11.2023
Hajmi1.23 Mb.
#1771866
1   2   3   4   5
Bog'liq
Mobile ilovalar yaratishda Dart dasturlash tilining o

extern "C" JNIEXPORT jstring JNICALL
Java_com_mindorks_androidndkexample_MainActivity_stringFromJNI( JNIEnv *env, jobject /* this */) {
std::string hello = "Hello, World!";
return env->NewStringUTF(hello.c_str());
}
Yuqoridagi kodni o'rganib chiqamiz:
Bu C ++ kodi bo'lgani uchun ba'zi kutubxonalarni shu ko'rinishda belgilaymiz:
#include
Yuqoridagi misolda com_mindorks_androidndkexample package nomi, MainActivity activity nomi va stringFromJNI bu native koddan String qiymat qaytaradigan va Java/Kotlin kodda chaqiriladigan metod hisoblanadi.
Nihoyat, return orqali biz funktsiyadan salom satrini qaytarayotganimizni ko'rishingiz mumkin.
Hozircha biz native qismni tugatdik. Keling, Kotlin kodimiz orqali Nativeda yaratilgan funksiyalarni qanday chaqirishni ko'rib chiqamiz.
// Used to load the 'native-lib' library on application startup.
init {
System.loadLibrary("native-lib")
}
Endi biz native-lib.cpp faylida ishlatilgan nomga ega bo'lgan Kotlin tashqi funktsiyasini e'lon qilishimiz kerak bo'ladi.
/**
* A native method that is implemented by the 'native-lib' native library,
* which is packaged with this application.
*/
external fun stringFromJNI(): String
Nihoyat, native-lib.cpp faylida mavjud bo'lgan funktsiyadan quyidagi qiymatlarni olishingiz mumkin:
// Example of a call to a native method
sample_text.text = stringFromJNI()
Yuqoridagi barcha kodlar sizning loyihangizda oldindan mavjud. Endi, shift+f10 tugmachalarini bosib ilovani ishga tushiring va natijani ko'ring.
"Calculator App" dasturi Android NDK da
Keling endi, foydalanuvchidan ma'lumot oladigan va quyidagi to'rtta amalni bajaradigan bitta kalkulyator ilovasini tuzamiz (biz faqat mantiqiy qismini qamrab olamiz):

  1. Qo'shish

  2. Ayirish

  3. Ko'paytirish

  4. Bo'lish

Xuddi "Hello, World!" misolida ko'rganimizdek biz birinchi o'rinda native-lib.cpp ichida metodlarimizni yaratishimiz kerak bo'ladi. Bunda "Calculator app" da biz yuqoridagi to'rtta operatsiyani bajarish uchun to'rt xil metodlarni yaratamiz.
//Addition function

Download 1.23 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling