WebView অবস্থা পরিচালনা করুন

WebView একটি সাধারণভাবে ব্যবহৃত উপাদান যা রাষ্ট্র পরিচালনার জন্য একটি উন্নত সিস্টেম অফার করে। একটি WebView এর অবস্থা বজায় রাখতে হবে এবং কনফিগারেশন পরিবর্তন জুড়ে স্ক্রোল অবস্থান। একটি WebView স্ক্রোল অবস্থান হারাতে পারে যখন ব্যবহারকারী ডিভাইসটিকে ঘোরান বা একটি ভাঁজযোগ্য ফোন আনফোল্ড করে, যা ব্যবহারকারীকে আবার WebView এর শীর্ষ থেকে পূর্ববর্তী স্ক্রোল অবস্থানে স্ক্রোল করতে বাধ্য করে।

WebView এর অবস্থা পরিচালনা করতে ভাল। WebView পুনঃনির্মিত হওয়ার সংখ্যা কমাতে যতটা সম্ভব কনফিগারেশন পরিবর্তনগুলি পরিচালনা করে আপনি এই গুণমানের সুবিধা নিতে পারেন। আপনার অ্যাপ্লিকেশানের কনফিগারেশন পরিবর্তনগুলি পরিচালনা করা উচিত কারণ কার্যকলাপ বিনোদন (কনফিগারেশন পরিবর্তনগুলি পরিচালনা করার সিস্টেমের উপায়) WebView পুনরায় তৈরি করে, যার ফলে WebView অবস্থা হারায়৷

রাষ্ট্র পরিচালনা করুন

কনফিগারেশন পরিবর্তনের সময় যতটা সম্ভব Activity রিক্রিয়েশন এড়িয়ে চলুন, এবং WebView অবৈধ হতে দিন যাতে এটি তার অবস্থা বজায় রাখার সময় আকার পরিবর্তন করতে পারে।

WebView অবস্থা পরিচালনা করতে:

  • আপনার অ্যাপ দ্বারা পরিচালিত কনফিগারেশন পরিবর্তন ঘোষণা করুন
  • WebView অবস্থা অবৈধ করুন

1. আপনার অ্যাপের AndroidManifest.xml ফাইলে কনফিগারেশন পরিবর্তন যোগ করুন

আপনার অ্যাপ দ্বারা পরিচালিত কনফিগারেশন পরিবর্তনগুলি নির্দিষ্ট করে কার্যকলাপ বিনোদন এড়িয়ে চলুন (ব্যবস্থার পরিবর্তে):

<activity
  android:name=".MyActivity"
  android:configChanges="screenLayout|orientation|screenSize
      |keyboard|keyboardHidden|smallestScreenSize" />

2. যখনই আপনার অ্যাপ কনফিগারেশন পরিবর্তন পায় তখন WebView বাতিল করুন

কোটলিন

override fun onConfigurationChanged(newConfig: Configuration) {
    super.onConfigurationChanged(newConfig)
    webView.invalidate()
}

জাভা

@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
    webview.invalidate();
}

এই ধাপটি শুধুমাত্র ভিউ সিস্টেমের ক্ষেত্রে প্রযোজ্য, কারণ Jetpack Compose-এর সঠিকভাবে Composable এলিমেন্টের আকার পরিবর্তন করার জন্য কিছু বাতিল করার প্রয়োজন নেই। যাইহোক, সঠিকভাবে পরিচালিত না হলে কম্পোজ প্রায়ই একটি WebView পুনরায় তৈরি করে।

মূল পয়েন্ট

  • android:configChanges : ম্যানিফেস্ট <activity> উপাদানের বৈশিষ্ট্য। অ্যাক্টিভিটি দ্বারা পরিচালিত কনফিগারেশন পরিবর্তনগুলি তালিকাভুক্ত করে।
  • View#invalidate() : পদ্ধতি যা একটি ভিউকে পুনরায় আঁকার কারণ করে। WebView দ্বারা উত্তরাধিকারসূত্রে প্রাপ্ত।

ফলাফল

আপনার অ্যাপ্লিকেশানের WebView উপাদানগুলি এখন একাধিক কনফিগারেশন পরিবর্তন জুড়ে তাদের অবস্থা এবং স্ক্রোল অবস্থান ধরে রেখেছে, আকার পরিবর্তন করা থেকে শুরু করে অভিযোজন পরিবর্তন থেকে ডিভাইস ভাঁজ করা এবং প্রকাশ করা পর্যন্ত।

এই নির্দেশিকা ধারণকারী সংগ্রহ

এই নির্দেশিকাটি এই কিউরেট করা কুইক গাইড সংগ্রহের অংশ যা বৃহত্তর অ্যান্ড্রয়েড উন্নয়ন লক্ষ্যগুলি কভার করে:

ট্যাবলেট, ফোল্ডেবল এবং ChromeOS ডিভাইসে একটি অপ্টিমাইজড ব্যবহারকারীর অভিজ্ঞতা সমর্থন করতে আপনার অ্যাপ সক্ষম করুন।

প্রশ্ন বা প্রতিক্রিয়া আছে

আমাদের প্রায়শই জিজ্ঞাসিত প্রশ্ন পৃষ্ঠায় যান এবং দ্রুত গাইড সম্পর্কে জানুন বা যোগাযোগ করুন এবং আপনার চিন্তাভাবনা আমাদের জানান।