১. শুরু করার আগে
তুমি কী তৈরি করবে
এই কোডল্যাবে, আপনি FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করে একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করবেন। আপনার অ্যাপটি FHIR সার্ভার থেকে FHIR রিসোর্স ডাউনলোড করতে FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করবে এবং সার্ভারে যেকোনো স্থানীয় পরিবর্তন আপলোড করবে।
তুমি কি শিখবে
- ডকার ব্যবহার করে কিভাবে একটি স্থানীয় HAPI FHIR সার্ভার তৈরি করবেন
- আপনার অ্যান্ড্রয়েড অ্যাপ্লিকেশনে FHIR ইঞ্জিন লাইব্রেরি কীভাবে একীভূত করবেন
- FHIR রিসোর্স ডাউনলোড এবং আপলোড করার জন্য এককালীন বা পর্যায়ক্রমিক কাজ সেট আপ করতে সিঙ্ক API কীভাবে ব্যবহার করবেন
- অনুসন্ধান API কীভাবে ব্যবহার করবেন
- স্থানীয়ভাবে FHIR রিসোর্স তৈরি, পড়া, আপডেট এবং মুছে ফেলার জন্য ডেটা অ্যাক্সেস API কীভাবে ব্যবহার করবেন
তোমার যা লাগবে
- ডকার ( ডকার পান )
- অ্যান্ড্রয়েড স্টুডিওর একটি সাম্প্রতিক সংস্করণ (v4.1.2+)
- অ্যান্ড্রয়েড এমুলেটর অথবা অ্যান্ড্রয়েড ৭.০ নৌগাট বা তার পরবর্তী ভার্সন চালিত একটি ফিজিক্যাল অ্যান্ড্রয়েড ডিভাইস
- নমুনা কোড
- কোটলিনে অ্যান্ড্রয়েড ডেভেলপমেন্টের প্রাথমিক জ্ঞান
যদি আপনি আগে অ্যান্ড্রয়েড অ্যাপ তৈরি না করে থাকেন, তাহলে আপনার প্রথম অ্যাপ তৈরি করে শুরু করতে পারেন।
2. পরীক্ষার তথ্য সহ একটি স্থানীয় HAPI FHIR সার্ভার সেট আপ করুন
HAPI FHIR হল একটি জনপ্রিয় ওপেন সোর্স FHIR সার্ভার। আমরা আমাদের কোডল্যাবে একটি স্থানীয় HAPI FHIR সার্ভার ব্যবহার করি যাতে Android অ্যাপটি সংযুক্ত হয়।
স্থানীয় HAPI FHIR সার্ভার সেট আপ করুন
- HAPI FHIR এর সর্বশেষ চিত্র পেতে টার্মিনালে নিম্নলিখিত কমান্ডটি চালান
docker pull hapiproject/hapi:latest - ডকার ডেস্কটপ ব্যবহার করে পূর্বে ডাউনলোড করা ছবি
hapiproject/hapiচালান, অথবা নিম্নলিখিত কমান্ডটি চালিয়ে একটি HAPI FHIR কন্টেইনার তৈরি করুন। আরও জানুন।docker run -p 8080:8080 hapiproject/hapi:latest - ব্রাউজারে
http://localhost:8080/URL টি খুলে সার্ভারটি পরীক্ষা করুন। আপনি HAPI FHIR ওয়েব ইন্টারফেসটি দেখতে পাবেন।
স্থানীয় HAPI FHIR সার্ভারে পরীক্ষার তথ্য রাখুন
আমাদের অ্যাপ্লিকেশনটি পরীক্ষা করার জন্য, আমাদের সার্ভারে কিছু পরীক্ষার ডেটার প্রয়োজন হবে। আমরা সিনথিয়া দ্বারা তৈরি সিন্থেটিক ডেটা ব্যবহার করব।
- প্রথমে, আমাদের synthea-samples থেকে নমুনা ডেটা ডাউনলোড করতে হবে।
synthea_sample_data_fhir_r4_sep2019.zipডাউনলোড এবং এক্সট্র্যাক্ট করতে হবে। আন-জিপ করা নমুনা ডেটাতে অসংখ্য.jsonফাইল রয়েছে, প্রতিটি ফাইলই একজন রোগীর জন্য একটি লেনদেন বান্ডেল। - আমরা তিনজন রোগীর পরীক্ষার তথ্য স্থানীয় HAPI FHIR সার্ভারে আপলোড করব। JSON ফাইল ধারণকারী ডিরেক্টরিতে নিম্নলিখিত কমান্ডটি চালান।
curl -X POST -H "Content-Type: application/json" -d @./Aaron697_Brekke496_2fa15bc7-8866-461a-9000-f739e425860a.json http://localhost:8080/fhir/ curl -X POST -H "Content-Type: application/json" -d @./Aaron697_Stiedemann542_41166989-975d-4d17-b9de-17f94cb3eec1.json http://localhost:8080/fhir/ curl -X POST -H "Content-Type: application/json" -d @./Abby752_Kuvalis369_2b083021-e93f-4991-bf49-fd4f20060ef8.json http://localhost:8080/fhir/ - সমস্ত রোগীর পরীক্ষার তথ্য সার্ভারে আপলোড করতে, চালান
তবে, এটি সম্পূর্ণ হতে অনেক সময় লাগতে পারে এবং কোডল্যাবের জন্য এটি প্রয়োজনীয় নয়।for f in *.json; do curl -X POST -H "Content-Type: application/json" -d @$f http://localhost:8080/fhir/ ; done - ব্রাউজারে
http://localhost:8080/fhir/Patient/URL টি খুলে সার্ভারে পরীক্ষার ডেটা উপলব্ধ কিনা তা যাচাই করুন।totalগণনা সহ অনুসন্ধান ফলাফল হিসাবে আপনিHTTP 200 OKলেখা এবং FHIR বান্ডেলে রোগীর ডেটা সম্বলিত পৃষ্ঠার "Response Bodyঅংশটি দেখতে পাবেন।
৩. অ্যান্ড্রয়েড অ্যাপ সেট আপ করুন
কোডটি ডাউনলোড করুন
এই কোডল্যাবের কোড ডাউনলোড করতে, Android FHIR SDK রিপোজিটরিটি ক্লোন করুন: git clone https://github.com/google/android-fhir.git
এই কোডল্যাবের স্টার্টার প্রকল্পটি codelabs/engine অবস্থিত।
অ্যান্ড্রয়েড স্টুডিওতে অ্যাপটি আমদানি করুন
আমরা অ্যান্ড্রয়েড স্টুডিওতে স্টার্টার অ্যাপটি আমদানি করে শুরু করি।
অ্যান্ড্রয়েড স্টুডিও খুলুন, ইমপোর্ট প্রজেক্ট (গ্রেডল, ইক্লিপস এডিটি, ইত্যাদি) নির্বাচন করুন এবং আপনার আগে ডাউনলোড করা সোর্স কোড থেকে codelabs/engine/ ফোল্ডারটি নির্বাচন করুন।

আপনার প্রকল্পটি গ্র্যাডেল ফাইলগুলির সাথে সিঙ্ক করুন
আপনার সুবিধার জন্য, FHIR ইঞ্জিন লাইব্রেরি নির্ভরতাগুলি ইতিমধ্যেই প্রকল্পে যোগ করা হয়েছে। এটি আপনাকে আপনার অ্যাপে FHIR ইঞ্জিন লাইব্রেরি সংহত করতে দেয়। আপনার প্রকল্পের app/build.gradle.kts ফাইলের শেষে নিম্নলিখিত লাইনগুলি পর্যবেক্ষণ করুন:
dependencies {
// ...
implementation("com.google.android.fhir:engine:1.1.0")
}
আপনার অ্যাপে সমস্ত নির্ভরতা উপলব্ধ আছে কিনা তা নিশ্চিত করতে, এই মুহুর্তে আপনার প্রকল্পটি gradle ফাইলের সাথে সিঙ্ক করা উচিত।
গ্রেডল ফাইলের সাথে সিঙ্ক প্রজেক্ট নির্বাচন করুন (
)অ্যান্ড্রয়েড স্টুডিও টুলবার থেকে। নির্ভরতাগুলি সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করার জন্য আপনি আবার অ্যাপটি চালাতে পারেন।
স্টার্টার অ্যাপটি চালান
এখন আপনি অ্যান্ড্রয়েড স্টুডিওতে প্রকল্পটি আমদানি করেছেন, আপনি প্রথমবারের মতো অ্যাপটি চালানোর জন্য প্রস্তুত।
অ্যান্ড্রয়েড স্টুডিও এমুলেটরটি শুরু করুন এবং রান এ ক্লিক করুন (
) অ্যান্ড্রয়েড স্টুডিও টুলবারে।

৪. FHIR ইঞ্জিন ইনস্ট্যান্স তৈরি করুন
আপনার অ্যান্ড্রয়েড অ্যাপে FHIR ইঞ্জিন অন্তর্ভুক্ত করার জন্য, আপনাকে FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করতে হবে এবং FHIR ইঞ্জিনের একটি উদাহরণ শুরু করতে হবে। নীচে বর্ণিত পদক্ষেপগুলি আপনাকে প্রক্রিয়াটির মধ্য দিয়ে পরিচালিত করবে।
- আপনার অ্যাপ্লিকেশন ক্লাসে নেভিগেট করুন, যা এই উদাহরণে
FhirApplication.kt,app/src/main/java/com/google/android/fhir/codelabs/engineএ অবস্থিত। -
onCreate()পদ্ধতির ভিতরে, FHIR ইঞ্জিন শুরু করতে নিম্নলিখিত কোডটি যোগ করুন: নোট:FhirEngineProvider.init( FhirEngineConfiguration( enableEncryptionIfSupported = true, RECREATE_AT_OPEN, ServerConfiguration( baseUrl = "http://10.0.2.2:8080/fhir/", httpLogger = HttpLogger( HttpLogger.Configuration( if (BuildConfig.DEBUG) HttpLogger.Level.BODY else HttpLogger.Level.BASIC, ), ) { Log.d("App-HttpLog", it) }, ), ), )-
enableEncryptionIfSupported: ডিভাইসটি যদি ডেটা এনক্রিপশন সমর্থন করে তবে এটি সক্ষম করে। -
RECREATE_AT_OPEN: ডাটাবেস ত্রুটি কৌশল নির্ধারণ করে। এই ক্ষেত্রে, খোলার সময় কোনও ত্রুটি দেখা দিলে এটি ডাটাবেস পুনরায় তৈরি করে। -
ServerConfigurationbaseUrl: এটি FHIR সার্ভারের বেস URL। প্রদত্ত IP ঠিকানা10.0.2.2বিশেষভাবে লোকালহোস্টের জন্য সংরক্ষিত, যা অ্যান্ড্রয়েড এমুলেটর থেকে অ্যাক্সেসযোগ্য। আরও জানুন।
-
-
FhirApplicationক্লাসে, FHIR ইঞ্জিনটি অলসভাবে চালু করতে নিম্নলিখিত লাইনটি যোগ করুন: এটি নিশ্চিত করে যে FhirEngine ইনস্ট্যান্সটি শুধুমাত্র প্রথমবার অ্যাক্সেস করার সময় তৈরি হয়, অ্যাপটি শুরু হওয়ার সাথে সাথে নয়।private val fhirEngine: FhirEngine by lazy { FhirEngineProvider.getInstance(this) } - আপনার আবেদন জুড়ে সহজে অ্যাক্সেসের জন্য
FhirApplicationক্লাসে নিম্নলিখিত সুবিধাজনক পদ্ধতিটি যোগ করুন: এই স্ট্যাটিক পদ্ধতিটি আপনাকে অ্যাপের যেকোনো স্থান থেকে প্রসঙ্গ ব্যবহার করে FHIR ইঞ্জিন ইনস্ট্যান্স পুনরুদ্ধার করতে দেয়।companion object { fun fhirEngine(context: Context) = (context.applicationContext as FhirApplication).fhirEngine }
৫. FHIR সার্ভারের সাথে ডেটা সিঙ্ক করুন
- একটি নতুন ক্লাস
DownloadWorkManagerImpl.ktতৈরি করুন। এই ক্লাসে, আপনি নির্ধারণ করবেন কিভাবে অ্যাপ্লিকেশনটি ডাউনলোডের তালিকা থেকে পরবর্তী রিসোর্সটি আনবে।: এই ক্লাসে ডাউনলোড করতে চাওয়া রিসোর্সের ধরণের একটি সারি আছে। এটি প্রতিক্রিয়া প্রক্রিয়া করে এবং ফিরে আসা বান্ডেল থেকে রিসোর্সগুলি বের করে, যা স্থানীয় ডাটাবেসে সংরক্ষিত হয়।class DownloadWorkManagerImpl : DownloadWorkManager { private val urls = LinkedList(listOf("Patient")) override suspend fun getNextRequest(): DownloadRequest? { val url = urls.poll() ?: return null return DownloadRequest.of(url) } override suspend fun getSummaryRequestUrls() = mapOf<ResourceType, String>() override suspend fun processResponse(response: Resource): Collection<Resource> { var bundleCollection: Collection<Resource> = mutableListOf() if (response is Bundle && response.type == Bundle.BundleType.SEARCHSET) { bundleCollection = response.entry.map { it.resource } } return bundleCollection } } - একটি নতুন ক্লাস তৈরি করুন
AppFhirSyncWorker.ktএই ক্লাসটি নির্ধারণ করে কিভাবে অ্যাপটি একটি ব্যাকগ্রাউন্ড ওয়ার্কার ব্যবহার করে রিমোট FHIR সার্ভারের সাথে সিঙ্ক করবে। এখানে, আমরা সংজ্ঞায়িত করেছি যে সিঙ্ক করার জন্য কোন ডাউনলোড ম্যানেজার, কনফ্লিক্ট রিজলভার এবং FHIR ইঞ্জিন ইনস্ট্যান্স ব্যবহার করতে হবে।class AppFhirSyncWorker(appContext: Context, workerParams: WorkerParameters) : FhirSyncWorker(appContext, workerParams) { override fun getDownloadWorkManager() = DownloadWorkManagerImpl() override fun getConflictResolver() = AcceptLocalConflictResolver override fun getFhirEngine() = FhirApplication.fhirEngine(applicationContext) override fun getUploadStrategy() = UploadStrategy.forBundleRequest( methodForCreate = HttpCreateMethod.PUT, methodForUpdate = HttpUpdateMethod.PATCH, squash = true, bundleSize = 500, ) } - আপনার ViewModel,
PatientListViewModel.ktতে, আপনি একটি এককালীন সিঙ্ক প্রক্রিয়া সেট আপ করবেন।triggerOneTimeSync()ফাংশনে এই কোডটি সনাক্ত করুন এবং যোগ করুন: এই কোরোটিনটি আমরা আগে সংজ্ঞায়িত AppFhirSyncWorker ব্যবহার করে FHIR সার্ভারের সাথে এককালীন সিঙ্ক শুরু করে। এরপর এটি সিঙ্ক প্রক্রিয়ার অবস্থার উপর ভিত্তি করে UI আপডেট করবে।viewModelScope.launch { Sync.oneTimeSync<AppFhirSyncWorker>(getApplication()) .shareIn(this, SharingStarted.Eagerly, 10) .collect { _pollState.emit(it) } } -
PatientListFragment.ktফাইলে,handleSyncJobStatusফাংশনের বডি আপডেট করুন: এখানে, সিঙ্ক প্রক্রিয়া শেষ হলে, ব্যবহারকারীকে অবহিত করে একটি টোস্ট বার্তা প্রদর্শিত হবে এবং অ্যাপটি একটি খালি নাম দিয়ে অনুসন্ধান শুরু করে সমস্ত রোগীকে প্রদর্শন করবে।when (syncJobStatus) { is SyncJobStatus.Finished -> { Toast.makeText(requireContext(), "Sync Finished", Toast.LENGTH_SHORT).show() viewModel.searchPatientsByName("") } else -> {} }
সবকিছু সেট আপ হয়ে গেলে, আপনার অ্যাপটি চালান। মেনুতে Sync বোতামটি ক্লিক করুন। যদি সবকিছু সঠিকভাবে কাজ করে, তাহলে আপনার স্থানীয় FHIR সার্ভার থেকে রোগীদের ডাউনলোড এবং অ্যাপ্লিকেশনটিতে প্রদর্শিত হতে দেখা যাবে।

৬. রোগীর তথ্য পরিবর্তন এবং আপলোড করুন
এই বিভাগে, আমরা আপনাকে নির্দিষ্ট মানদণ্ডের উপর ভিত্তি করে রোগীর তথ্য পরিবর্তন এবং আপনার FHIR সার্ভারে আপডেট করা তথ্য আপলোড করার প্রক্রিয়া সম্পর্কে নির্দেশনা দেব। বিশেষ করে, আমরা Wakefield এবং Taunton বসবাসকারী রোগীদের ঠিকানা শহরগুলি অদলবদল করব।
ধাপ ১ : PatientListViewModel-এ পরিবর্তন যুক্তি সেট আপ করুন
এই বিভাগের কোডটি PatientListViewModel এর triggerUpdate ফাংশনে যোগ করা হয়েছে।
- FHIR ইঞ্জিন অ্যাক্সেস করুন :
PatientListViewModel.ktএ FHIR ইঞ্জিনের একটি রেফারেন্স পেয়ে শুরু করুন। এই কোডটি ViewModel এর সুযোগের মধ্যে একটি coroutine চালু করে এবং FHIR ইঞ্জিনটি চালু করে।viewModelScope.launch { val fhirEngine = FhirApplication.fhirEngine(getApplication()) - ওয়েকফিল্ড থেকে রোগীদের অনুসন্ধান করুন :
Wakefieldশহরের ঠিকানা সহ রোগীদের অনুসন্ধান করতে FHIR ইঞ্জিন ব্যবহার করুন। এখানে, আমরা FHIR ইঞ্জিনেরval patientsFromWakefield = fhirEngine.search<Patient> { filter( Patient.ADDRESS_CITY, { modifier = StringFilterModifier.MATCHES_EXACTLY value = "Wakefield" } ) }searchপদ্ধতি ব্যবহার করে রোগীদের তাদের ঠিকানা শহরের উপর ভিত্তি করে ফিল্টার করছি। ফলাফলটি ওয়েকফিল্ডের রোগীদের একটি তালিকা হবে। - টাউনটন থেকে রোগীদের অনুসন্ধান করুন : একইভাবে,
Tauntonশহরের ঠিকানা সহ রোগীদের অনুসন্ধান করুন। আমাদের কাছে এখন দুটি রোগীর তালিকা আছে - একটি ওয়েকফিল্ড থেকে এবং অন্যটি টাউনটন থেকে।val patientsFromTaunton = fhirEngine.search<Patient> { filter( Patient.ADDRESS_CITY, { modifier = StringFilterModifier.MATCHES_EXACTLY value = "Taunton" } ) } - রোগীর ঠিকানা পরিবর্তন করুন :
patientsFromWakefieldতালিকার প্রতিটি রোগীর ঠিকানা দেখুন, তাদের শহরটিTauntonএ পরিবর্তন করুন এবং FHIR ইঞ্জিনে আপডেট করুন। একইভাবে,patientsFromWakefield.forEach { it.resource.address.first().city = "Taunton" fhirEngine.update(it.resource) }patientsFromTauntonতালিকার প্রতিটি রোগীর শহরWakefieldএ পরিবর্তন করার জন্য আপডেট করুন।patientsFromTaunton.forEach { it.resource.address.first().city = "Wakefield" fhirEngine.update(it.resource) } - সিঙ্ক্রোনাইজেশন শুরু করুন : স্থানীয়ভাবে ডেটা পরিবর্তন করার পরে, FHIR সার্ভারে ডেটা আপডেট করা হয়েছে তা নিশ্চিত করতে এককালীন সিঙ্ক ট্রিগার করুন।
ক্লোজিং ব্রেসtriggerOneTimeSync() }}শুরুতে চালু হওয়া কোরোটিনের শেষ নির্দেশ করে।
ধাপ ২ : কার্যকারিতা পরীক্ষা করুন
- UI পরীক্ষা : আপনার অ্যাপটি চালান। মেনুতে
Updateবোতামে ক্লিক করুন। আপনি রোগীর ঠিকানা শহরগুলি দেখতে পাবেনAaron697এবংAbby752অদলবদল করা হয়েছে। - সার্ভার যাচাইকরণ : একটি ব্রাউজার খুলুন এবং
http://localhost:8080/fhir/Patient/এ যান। যাচাই করুন যে রোগীAaron697এবংAbby752এর ঠিকানা শহর স্থানীয় FHIR সার্ভারে আপডেট করা আছে।
এই পদক্ষেপগুলি অনুসরণ করে, আপনি রোগীর ডেটা পরিবর্তন করার এবং আপনার FHIR সার্ভারের সাথে পরিবর্তনগুলি সিঙ্ক্রোনাইজ করার জন্য একটি প্রক্রিয়া সফলভাবে বাস্তবায়ন করেছেন।
৭. নাম অনুসারে রোগীদের অনুসন্ধান করুন
রোগীদের নাম অনুসারে অনুসন্ধান করলে তথ্য সংগ্রহের একটি ব্যবহারকারী-বান্ধব উপায় হতে পারে। এখানে, আমরা আপনার আবেদনে এই বৈশিষ্ট্যটি বাস্তবায়নের প্রক্রিয়াটি আপনাকে দেখাবো।
ধাপ ১ : ফাংশন স্বাক্ষর আপডেট করুন
আপনার PatientListViewModel.kt ফাইলে যান এবং searchPatientsByName নামের ফাংশনটি খুঁজুন। আমরা এই ফাংশনে কোড যোগ করব।
প্রদত্ত নাম কোয়েরির উপর ভিত্তি করে ফলাফল ফিল্টার করতে এবং UI আপডেট করার জন্য ফলাফল নির্গত করতে, নিম্নলিখিত শর্তসাপেক্ষ কোড ব্লক অন্তর্ভুক্ত করুন:
viewModelScope.launch {
val fhirEngine = FhirApplication.fhirEngine(getApplication())
if (nameQuery.isNotEmpty()) {
val searchResult = fhirEngine.search<Patient> {
filter(
Patient.NAME,
{
modifier = StringFilterModifier.CONTAINS
value = nameQuery
},
)
}
liveSearchedPatients.value = searchResult.map { it.resource }
}
}
এখানে, যদি nameQuery খালি না থাকে, তাহলে অনুসন্ধান ফাংশন ফলাফলগুলি ফিল্টার করে শুধুমাত্র সেই রোগীদের অন্তর্ভুক্ত করবে যাদের নামে নির্দিষ্ট কোয়েরি রয়েছে।
ধাপ ২ : নতুন অনুসন্ধান কার্যকারিতা পরীক্ষা করুন
- অ্যাপটি পুনরায় চালু করুন : এই পরিবর্তনগুলি করার পরে, আপনার অ্যাপটি পুনরায় তৈরি করুন এবং চালান।
- রোগীদের অনুসন্ধান করুন : রোগীর তালিকার স্ক্রিনে, অনুসন্ধান কার্যকারিতাটি ব্যবহার করুন। এখন আপনি একটি নাম (অথবা নামের অংশ) লিখতে সক্ষম হবেন যাতে রোগীর তালিকাটি সেই অনুযায়ী ফিল্টার করা যায়।
এই ধাপগুলি সম্পন্ন করার মাধ্যমে, আপনি ব্যবহারকারীদের তাদের নাম অনুসারে রোগীদের দক্ষতার সাথে অনুসন্ধান করার ক্ষমতা প্রদান করে আপনার অ্যাপ্লিকেশনটিকে আরও উন্নত করেছেন। এটি ব্যবহারকারীর অভিজ্ঞতা এবং ডেটা পুনরুদ্ধারের দক্ষতা উল্লেখযোগ্যভাবে উন্নত করতে পারে।
৮. অভিনন্দন!
আপনার অ্যাপে FHIR রিসোর্স পরিচালনা করতে আপনি FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করেছেন:
- FHIR সার্ভারের সাথে FHIR রিসোর্স সিঙ্ক করতে Sync API ব্যবহার করুন
- স্থানীয় FHIR রিসোর্স তৈরি, পড়া, আপডেট এবং মুছে ফেলার জন্য ডেটা অ্যাক্সেস API ব্যবহার করুন
- স্থানীয় FHIR রিসোর্স অনুসন্ধান করতে Search API ব্যবহার করুন
আমরা যা কভার করেছি
- কিভাবে একটি স্থানীয় HAPI FHIR সার্ভার সেট আপ করবেন
- স্থানীয় HAPI FHIR সার্ভারে পরীক্ষার ডেটা কীভাবে আপলোড করবেন
- FHIR ইঞ্জিন লাইব্রেরি ব্যবহার করে কীভাবে একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করবেন
- FHIR ইঞ্জিন লাইব্রেরিতে সিঙ্ক API, ডেটা অ্যাক্সেস API এবং অনুসন্ধান API কীভাবে ব্যবহার করবেন
পরবর্তী পদক্ষেপ
- FHIR ইঞ্জিন লাইব্রেরির জন্য ডকুমেন্টেশন অন্বেষণ করুন
- অনুসন্ধান API এর উন্নত বৈশিষ্ট্যগুলি অন্বেষণ করুন
- আপনার নিজস্ব অ্যান্ড্রয়েড অ্যাপে FHIR ইঞ্জিন লাইব্রেরি প্রয়োগ করুন