অ্যান্ড্রয়েড 1.1 সংস্করণ নোট

তারিখ: ফেব্রুয়ারি 2009
API স্তর: 2

এই দস্তাবেজটি SDK-তে অন্তর্ভুক্ত Android 1.1 সিস্টেম চিত্রের জন্য সংস্করণ নোট প্রদান করে।

ওভারভিউ

SDK-এ বিতরণ করা Android 1.1 সিস্টেম ইমেজ হল Android 1.1 প্রোডাকশন সিস্টেম ইমেজের বিকাশের প্রতিরূপ, যা ফেব্রুয়ারি 2009 থেকে অ্যান্ড্রয়েড-চালিত হ্যান্ডসেটগুলিতে স্থাপনযোগ্য।

অ্যান্ড্রয়েড 1.1 সিস্টেম ইমেজ ফ্রেমওয়ার্ক API-এর একটি আপডেট সংস্করণ সরবরাহ করে। অ্যান্ড্রয়েড 1.0 এপিআই-এর মতো, অ্যান্ড্রয়েড 1.1 এপিআই-কে একটি পূর্ণসংখ্যা শনাক্তকারী বরাদ্দ করা হয়েছে — 2 — যা সিস্টেমেই সংরক্ষিত থাকে। এই আইডেন্টিফায়ার, যাকে "API লেভেল" বলা হয়, সেটি সিস্টেমকে সঠিকভাবে নির্ধারণ করতে দেয় যে একটি অ্যাপ্লিকেশন সিস্টেমের সাথে সামঞ্জস্যপূর্ণ কিনা, অ্যাপ্লিকেশন ইনস্টল করার আগে।

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

আপনি যদি Android 1.1 প্ল্যাটফর্মে চলমান Android-চালিত ডিভাইসগুলির সাথে সামঞ্জস্যপূর্ণ একটি অ্যাপ্লিকেশন তৈরি করতে Android 1.1 সিস্টেম ইমেজ ব্যবহার করেন, তাহলে আপনাকে অবশ্যই android:minSdkVersion অ্যাট্রিবিউটটি "2" তে সেট করতে হবে যাতে আপনার অ্যাপ্লিকেশনটি শুধুমাত্র ব্যবহার করা ডিভাইসগুলির সাথে সামঞ্জস্যপূর্ণ। অ্যান্ড্রয়েড 1.1 (বা বড়) সিস্টেম ইমেজ।

বিশেষভাবে, আপনি ম্যানিফেস্ট ফাইলে <manifest> এর একটি চাইল্ড হিসাবে একটি <uses-sdk> উপাদানে android:minSdkVersion বৈশিষ্ট্যটি নির্দিষ্ট করুন। সেট করার সময়, বৈশিষ্ট্যটি এইরকম দেখায়:

<manifest>
  ...
  <uses-sdk android:minSdkVersion="2" />
  ...
</manifest>

এইভাবে android:minSdkVersion সেট করার মাধ্যমে, আপনি নিশ্চিত করেন যে ব্যবহারকারীরা শুধুমাত্র আপনার অ্যাপ্লিকেশান ইনস্টল করতে সক্ষম হবেন যদি তাদের ডিভাইসগুলি Android 1.1 প্ল্যাটফর্ম চালায়। পরিবর্তে, এটি নিশ্চিত করে যে আপনার অ্যাপ্লিকেশনটি তাদের ডিভাইসে সঠিকভাবে কাজ করবে, বিশেষ করে যদি এটি Android 1.1 এ প্রবর্তিত API ব্যবহার করে।

যদি আপনার অ্যাপ্লিকেশনটি Android 1.1 এ প্রবর্তিত API ব্যবহার করে কিন্তু <uses-sdk android:minSdkVersion="2" /> ঘোষণা না করে, তাহলে এটি Android 1.1 ডিভাইসে সঠিকভাবে চলবে কিন্তু Android 1.0 ডিভাইসে নয় । পরবর্তী ক্ষেত্রে, অ্যাপ্লিকেশনটি রানটাইমে ক্র্যাশ হয়ে যাবে যখন এটি অ্যান্ড্রয়েড 1.1 API ব্যবহার করার চেষ্টা করবে।

যদি আপনার অ্যাপ্লিকেশানটি Android 1.1-এ প্রবর্তিত কোনো নতুন API ব্যবহার না করে, তাহলে আপনি android:minSdkVersion অপসারণ করে বা বৈশিষ্ট্যটিকে "1" তে সেট করে Android 1.0 সামঞ্জস্যতা নির্দেশ করতে পারেন। যাইহোক, আপনার অ্যাপ্লিকেশান প্রকাশ করার আগে, আপনাকে অবশ্যই Android 1.0 সিস্টেম ইমেজের (Android 1.0 SDK-তে উপলব্ধ) আপনার অ্যাপ্লিকেশনটি কম্পাইল করা নিশ্চিত করতে হবে যাতে এটি Android 1.0 ডিভাইসের জন্য সঠিকভাবে তৈরি এবং কাজ করে। আপনার অ্যাপ্লিকেশনটিকে API স্তরগুলির সাথে সম্পর্কিত সিস্টেম চিত্রগুলির বিরুদ্ধে পরীক্ষা করা উচিত যা অ্যাপ্লিকেশনটির সাথে সামঞ্জস্যপূর্ণ হওয়ার জন্য ডিজাইন করা হয়েছে৷

আপনি যদি নিশ্চিত হন যে আপনার অ্যাপ্লিকেশানটি Android 1.1 API ব্যবহার করছে না এবং সেগুলি ব্যবহার করার কোন প্রয়োজন নেই, তাহলে Android 1.1 SDK-এ স্থানান্তরিত হওয়া এবং অতিরিক্ত পরীক্ষা করার পরিবর্তে আপনি Android 1.0 SDK-এ কাজ চালিয়ে যাওয়া সহজ মনে করতে পারেন৷

বহিরাগত লাইব্রেরি

সিস্টেম ইমেজে এই বাহ্যিক লাইব্রেরিগুলি রয়েছে, যেগুলি আপনি একটি <uses-library> যোগ করে আপনার অ্যাপ্লিকেশন থেকে অ্যাক্সেস করতে পারেন।

  • com.google.android.maps — আপনার অ্যাপ্লিকেশনকে Google Maps ডেটাতে অ্যাক্সেস দেয়। মনে রাখবেন, Google Maps ডেটা ব্যবহার করতে, একটি Maps API কী প্রয়োজন৷

ডিভাইস সামঞ্জস্য

অ্যান্ড্রয়েড 1.1 সিস্টেম চিত্রটি নীচে তালিকাভুক্ত অ্যান্ড্রয়েড-চালিত ডিভাইসগুলির সাথে সামঞ্জস্যের জন্য পরীক্ষা করা হয়েছিল:

  • T-Mobile G1

অন্তর্নির্মিত অ্যাপ্লিকেশন

সিস্টেম ইমেজে এই অন্তর্নির্মিত অ্যাপ্লিকেশনগুলি অন্তর্ভুক্ত রয়েছে:

  • অ্যালার্ম ঘড়ি
  • API ডেমো
  • ব্রাউজার
  • ক্যালকুলেটর
  • ক্যামেরা
  • পরিচিতি
  • দেব টুলস
  • ডায়ালার
  • ইমেইল
  • মানচিত্র (এবং রাস্তার দৃশ্য)
  • মেসেজিং
  • সঙ্গীত
  • ছবি
  • সেটিংস

UI স্থানীয়করণ

সিস্টেম ইমেজ নীচে তালিকাভুক্ত ভাষার জন্য স্থানীয় UI স্ট্রিং প্রদান করে।

  • ইংরেজি, US (en_US)
  • জার্মান (ডি)

স্থানীয়কৃত UI স্ট্রিংগুলি এমুলেটরে প্রদর্শনযোগ্য লোকেলগুলির সাথে মেলে, ডিভাইস সেটিংস অ্যাপ্লিকেশনের মাধ্যমে অ্যাক্সেসযোগ্য৷

সমাধান করা সমস্যা

  • AlarmClock সতর্কতা এখন AlarmManager এর মাধ্যমে না হয়ে সরাসরি অডিও/ভাইব চালায়। অ্যালার্মক্লক অ্যালার্ট অ্যাক্টিভিটি শুরু হওয়ার পরিবর্তে তার IntentReceiver-এ অডিও/ভাইব বাজানো শুরু করে। এই পরিবর্তনগুলিকে মোডাল ডায়ালগগুলির দ্বারা অবরুদ্ধ হওয়া থেকে অ্যালার্মগুলিকে প্রতিরোধ করা উচিত।
  • ডিভাইসের ঘুমের সমাধান।
  • একক ট্যাপ আর ইন-কল ডায়ালপ্যাড খোলে না; ব্যবহারকারীদের এখন এটি স্পর্শ এবং টেনে আনতে হবে।
  • প্রেরিত ফোল্ডারে স্থানান্তরিত হলে IMAP সংযোগ (একটি জিমেইল ভিত্তিক সার্ভারে) হিমায়িত করার জন্য 25 আউটবাউন্ড বার্তাগুলির মধ্যে প্রায় 1টি বাগ সংশোধন করে৷
  • স্বয়ংক্রিয় অ্যাকাউন্ট সেটআপ এন্ট্রিগুলি সরিয়ে দেয় যা ভাঙা ছিল বা পরীক্ষাযোগ্য ছিল না। অবশিষ্ট কিছু এন্ট্রিতে ছোটখাট সংশোধন যোগ করে। কয়েকটি বিশেষ ক্ষেত্রে ব্যবহৃত সতর্কতা ডায়ালগের উন্নতি করে।
  • প্রতি 15 মিনিটে ডিফল্ট মেল চেকিং ব্যবধান পরিবর্তন করে (ডিফল্ট করার পরিবর্তে "কখনই না")।
  • IMAP-এ পাসওয়ার্ড-উদ্ধৃতি বাগ সংশোধন করে, যাতে ব্যবহারকারীরা পাসওয়ার্ডে বিশেষ অক্ষর অন্তর্ভুক্ত করতে পারে (যেমন স্পেস)।
  • স্বয়ংক্রিয় এবং ম্যানুয়াল অ্যাকাউন্ট সেটআপে বিভিন্ন ত্রুটি সংশোধন করে
  • বিভিন্ন সংযোগ ত্রুটির জন্য রিপোর্টিং উন্নত করে, ব্যবহারকারীর পক্ষে ব্যর্থ অ্যাকাউন্ট সেটআপগুলি নির্ণয় করা সহজ করে তোলে৷
  • POP3 অ্যাকাউন্টের জন্য নতুন-মেল বিজ্ঞপ্তি সংশোধন করে।
  • "কখনও চেক করবেন না" হিসাবে চিহ্নিত অ্যাকাউন্টগুলির যথাযথ স্বয়ংক্রিয়-চেকিং নিশ্চিত করে৷
  • এখন ব্যবহারকারীর পছন্দ ব্যবহার করে তারিখ এবং সময় প্রদর্শন করে (যেমন 24 ঘন্টা বনাম AM/PM)।
  • এখন cc: মেসেজ ভিউতে দেখায়।
  • POP3 সংযোগ ব্যর্থতা থেকে পুনরুদ্ধারের উন্নতি করে।
  • POP3 পার্সার নিয়মগুলি শিথিল করা হয়েছে, তাই অ্যাপ্লিকেশনটি অ-সঙ্গত ইমেল সার্ভারগুলির সাথে কাজ করতে পারে৷

নতুন বৈশিষ্ট্য

  • মানচিত্র: যখন একজন ব্যবহারকারী মানচিত্রে অনুসন্ধান করে এবং তার বিশদ বিবরণ দেখতে একটি ব্যবসায় ক্লিক করে তখন বিশদ বিবরণ এবং পর্যালোচনা যোগ করে।
  • ডায়ালার: স্পিকারফোন ব্যবহার করার সময় ইন-কল স্ক্রীন টাইমআউট ডিফল্ট এখন দীর্ঘ।
  • ডায়ালার: DTMF ডায়ালপ্যাড আবিষ্কার করা সহজ করতে ইন-কল মেনুতে একটি "শো ডায়ালপ্যাড" / "ডায়ালপ্যাড লুকান" আইটেম যোগ করে।
  • MMS থেকে সংযুক্তি সংরক্ষণের জন্য সমর্থন যোগ করে
  • লেআউটে মার্কির জন্য সমর্থন যোগ করে।

এপিআই পরিবর্তন

ওভারভিউ

  • পরীক্ষার সিস্টেমের জন্য টীকা যোগ করে, কোন প্রকৃত (অ-পরীক্ষা) API পরিবর্তন হয় না।
  • একটি প্রক্রিয়া সহজে তার UID নির্ধারণ করার অনুমতি দেওয়ার জন্য একটি পদ্ধতি যোগ করে।
  • লেআউটে মার্কির জন্য সমর্থন যোগ করে।
  • দর্শনে প্যাডিং নির্ধারণের জন্য নতুন পদ্ধতি যোগ করে। আপনি যদি আপনার নিজের View এর সাবক্লাস লিখছেন তাহলে দরকারী।
  • নতুন অনুমতি যোগ করে যা একটি অ্যাপ্লিকেশনকে একটি SMS বা WAP পুশ বার্তা সম্প্রচার করতে দেয়৷
  • API ক্লিনআপ: SDK-বাউন্ড সিস্টেম ইমেজ থেকে সুরক্ষিত কনস্ট্রাক্টর সরিয়ে দেয়।

API পরিবর্তনের বিবরণ

মডিউল বা বৈশিষ্ট্য বর্ণনা পরিবর্তন করুন
পরীক্ষার সিস্টেমের জন্য টীকা
LargeTest টীকা যোগ করা হয়েছে.
MediumTest টীকা যোগ করা হয়েছে।
SmallTest টীকা যোগ করা হয়েছে.
একটি প্রক্রিয়া সহজে তার UID জানতে অনুমতি দিন।
android.os.Process ক্লাসে পাবলিক মেথড myUid() যোগ করা হয়েছে
ভিউ মধ্যে প্যাডিং
android.view.View ক্লাসে পাবলিক পদ্ধতি getBottomPaddingOffset() যোগ করা হয়েছে।
android.view.View ক্লাসে পাবলিক পদ্ধতি getLeftPaddingOffset() যোগ করা হয়েছে।
android.view.View ক্লাসে পাবলিক পদ্ধতি getRightPaddingOffset() যোগ করা হয়েছে।
android.view.View ক্লাসে পাবলিক পদ্ধতি getTopPaddingOffset() যোগ করা হয়েছে।
android.view.View ক্লাসে isPaddingOffsetRequired() পাবলিক পদ্ধতি যোগ করা হয়েছে।
মার্কি সমর্থন
TextView ক্লাসে পাবলিক মেথড setMarqueeRepeatLimit(int) যোগ করা হয়েছে
পাবলিক ফিল্ড android.R.attr.marqueeRepeatLimit যোগ করা হয়েছে
নতুন অনুমতি
পাবলিক ফিল্ড android.Manifest.permission.BROADCAST_SMS যোগ করা হয়েছে
পাবলিক ফিল্ড android.Manifest.permission.BROADCAST_WAP_PUSH যোগ করা হয়েছে
API ক্লিনআপ
সুরক্ষিত কনস্ট্রাক্টর java.net.ServerSocket.ServerSocket(java.net.SocketImpl) সরানো হয়েছে।