API স্তর: 15
Android 4.0.3 ( ICE_CREAM_SANDWICH_MR1
) হল Android 4.0 ( ICE_CREAM_SANDWICH
) প্ল্যাটফর্ম পরিবারের একটি ক্রমবর্ধমান রিলিজ৷ এই রিলিজে ব্যবহারকারী এবং ডেভেলপারদের জন্য নতুন বৈশিষ্ট্য, API পরিবর্তন এবং বিভিন্ন বাগ ফিক্স অন্তর্ভুক্ত রয়েছে।
বিকাশকারীদের জন্য, Android 4.0.3 প্ল্যাটফর্মটি Android SDK-এর জন্য একটি ডাউনলোডযোগ্য উপাদান হিসাবে উপলব্ধ। ডাউনলোডযোগ্য প্ল্যাটফর্মটিতে একটি অ্যান্ড্রয়েড লাইব্রেরি এবং সিস্টেম ইমেজ, সেইসাথে এমুলেটর স্কিন এবং আরও অনেক কিছু রয়েছে। Android 4.0.3 এর সাথে বিকাশ বা পরীক্ষা শুরু করতে, আপনার SDK-এ প্ল্যাটফর্ম ডাউনলোড করতে Android SDK ম্যানেজার ব্যবহার করুন৷
API ওভারভিউ
নীচের বিভাগগুলি Android 4.0.3-এ নতুন APIগুলির একটি প্রযুক্তিগত ওভারভিউ প্রদান করে৷
পরিচিতি প্রদানকারীতে সামাজিক স্ট্রিম API
যে অ্যাপ্লিকেশানগুলি সামাজিক স্ট্রিম ডেটা ব্যবহার করে যেমন স্ট্যাটাস আপডেট এবং চেক-ইনগুলি এখন সেই ডেটা প্রতিটি ব্যবহারকারীর পরিচিতির সাথে সিঙ্ক করতে পারে, প্রতিটির জন্য ফটো সহ একটি স্ট্রীমে আইটেম সরবরাহ করে৷
একটি পৃথক পরিচিতির সামাজিক স্ট্রীম ধারণ করা ডাটাবেস টেবিলটি android.provider.ContactsContract.StreamItems দ্বারা সংজ্ঞায়িত করা হয়, যে Uri এর জন্য ContactsContract.RawContacts
ডিরেক্টরিতে নেস্ট করা হয় যার মধ্যে স্ট্রীম আইটেমগুলি রয়েছে৷ প্রতিটি সামাজিক স্ট্রিম সারণীতে প্রতিটি স্ট্রিম আইটেম সম্পর্কে মেটাডেটার জন্য বেশ কয়েকটি কলাম অন্তর্ভুক্ত থাকে, যেমন উৎসের প্রতিনিধিত্বকারী একটি আইকন (একটি অবতার), আইটেমের জন্য একটি লেবেল, প্রাথমিক পাঠ্য সামগ্রী, আইটেম সম্পর্কে মন্তব্য (যেমন অন্যান্য ব্যক্তির প্রতিক্রিয়া), এবং আরো একটি স্ট্রীমের সাথে যুক্ত ফটোগুলি android.provider.ContactsContract.StreamItemPhotos দ্বারা সংজ্ঞায়িত অন্য টেবিলে সংরক্ষণ করা হয়, যা android.provider.ContactsContract.StreamItems Uri-এর একটি সাব-ডিরেক্টরি হিসাবে উপলব্ধ৷
আরও তথ্যের জন্য android.provider.ContactsContract.StreamItems এবং android.provider.ContactsContract.StreamItemPhotos দেখুন।
একটি পরিচিতির জন্য সামাজিক স্ট্রিম আইটেম পড়তে বা লিখতে, একটি অ্যাপ্লিকেশনকে অবশ্যই <uses-permission android:name="android.permission.READ_SOCIAL_STREAM">
এবং/অথবা <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM">
ঘোষণা করে ব্যবহারকারীর কাছ থেকে অনুমতির অনুরোধ করতে হবে <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM">
তাদের ম্যানিফেস্ট ফাইলগুলিতে৷
ক্যালেন্ডার প্রদানকারী- ক্যালেন্ডার প্রদানকারীতে একটি রঙের টেবিলের প্রতিনিধিত্ব করতে
CalendarContract.Colors
ক্লাস যোগ করে। ক্লাস একটি প্রদত্ত অ্যাকাউন্টের জন্য উপলব্ধ রং অ্যাক্সেস করার জন্য ক্ষেত্র প্রদান করে। রঙগুলি COLOR_KEY
দ্বারা উল্লেখ করা হয় যা একটি প্রদত্ত অ্যাকাউন্ট নাম/টাইপের জন্য অনন্য হতে হবে৷ এই মানগুলি শুধুমাত্র সিঙ্ক অ্যাডাপ্টারের দ্বারা আপডেট করা যেতে পারে৷ - বিনিময়/সিঙ্ক সমর্থনের জন্য
ALLOWED_AVAILABILITY
এবং ALLOWED_ATTENDEE_TYPES
যোগ করে। - অংশগ্রহণকারীদের জন্য
TYPE_RESOURCE
(যেমন কনফারেন্স রুম) এবং AVAILABILITY_TENTATIVE
, সেইসাথে ইভেন্টের জন্য EVENT_COLOR_KEY
যোগ করে৷
হোম স্ক্রীন উইজেট
CalendarContract.Colors
ক্লাস যোগ করে। ক্লাস একটি প্রদত্ত অ্যাকাউন্টের জন্য উপলব্ধ রং অ্যাক্সেস করার জন্য ক্ষেত্র প্রদান করে। রঙগুলি COLOR_KEY
দ্বারা উল্লেখ করা হয় যা একটি প্রদত্ত অ্যাকাউন্ট নাম/টাইপের জন্য অনন্য হতে হবে৷ এই মানগুলি শুধুমাত্র সিঙ্ক অ্যাডাপ্টারের দ্বারা আপডেট করা যেতে পারে৷ALLOWED_AVAILABILITY
এবং ALLOWED_ATTENDEE_TYPES
যোগ করে।TYPE_RESOURCE
(যেমন কনফারেন্স রুম) এবং AVAILABILITY_TENTATIVE
, সেইসাথে ইভেন্টের জন্য EVENT_COLOR_KEY
যোগ করে৷ অ্যান্ড্রয়েড 4.0 থেকে শুরু করে, হোম স্ক্রীন উইজেটগুলিতে আর তাদের নিজস্ব প্যাডিং অন্তর্ভুক্ত করা উচিত নয়৷ পরিবর্তে, বর্তমান স্ক্রিনের বৈশিষ্ট্যের উপর ভিত্তি করে সিস্টেমটি এখন স্বয়ংক্রিয়ভাবে প্রতিটি উইজেটের জন্য প্যাডিং যোগ করে। এটি একটি গ্রিডে উইজেটগুলির আরও অভিন্ন, সামঞ্জস্যপূর্ণ উপস্থাপনার দিকে নিয়ে যায়। হোম স্ক্রীন উইজেটগুলি হোস্ট করে এমন অ্যাপ্লিকেশনগুলিকে সহায়তা করার জন্য, প্ল্যাটফর্মটি একটি নতুন পদ্ধতি প্রদান করে getDefaultPaddingForWidget()
। অ্যাপ্লিকেশনগুলি সিস্টেম-সংজ্ঞায়িত প্যাডিং পেতে এই পদ্ধতিটিকে কল করতে পারে এবং উইজেটে বরাদ্দ করার জন্য ঘরের সংখ্যা গণনা করার সময় এটির জন্য অ্যাকাউন্ট করতে পারে।
বানান-পরীক্ষা
- বানান-পরীক্ষক পরিষেবাগুলি অ্যাক্সেস করে এমন অ্যাপগুলির জন্য, একটি নতুন
cancel()
পদ্ধতি একটি অধিবেশনে মুলতুবি থাকা এবং চলমান বানান-পরীক্ষকের কাজগুলি বাতিল করে৷ - বানান-পরীক্ষক পরিষেবাগুলির জন্য, একটি নতুন পরামর্শ পতাকা,
RESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS
, পরিষেবাগুলিকে নিম্ন-বিশ্বাসের থেকে উচ্চ-বিশ্বাসের পরামর্শগুলিকে আলাদা করতে দেয়৷ উদাহরণস্বরূপ, একটি বানান-পরীক্ষক পতাকা সেট করতে পারে যদি একটি ইনপুট শব্দ ব্যবহারকারীর অভিধানে না থাকে তবে তার সম্ভাব্য প্রস্তাবনা থাকে, অথবা যদি একটি ইনপুট শব্দ অভিধানে না থাকে এবং এমন প্রস্তাবনা থাকে যা কম উপযোগী হতে পারে .বানান-পরীক্ষকের সাথে সংযুক্ত অ্যাপগুলি টাইপ এবং প্রস্তাবনাগুলির প্রস্তাবনা শব্দগুলিকে ইনপুট হিসাবে চিহ্নিত করতে কিনা তা নির্ধারণ করতে, অন্যান্য পরামর্শ বৈশিষ্ট্যগুলির সাথে, সেইসাথে
getSuggestionsAttributes()
এবংgetSuggestionsCount()
পদ্ধতির সাথেRESULT_ATTR_HAS_RECOMMENDED_SUGGESTIONS
পতাকা ব্যবহার করতে পারে৷ - টেক্সট স্প্যানের জন্য একটি নতুন
FLAG_AUTO_CORRECTION
শৈলী নির্দেশ করে যে ব্যবহারকারী যে শব্দ/পাঠ্য টাইপ/কম্পোজ করছেন তাতে স্বয়ংক্রিয় সংশোধন প্রয়োগ করা হবে। স্বয়ংক্রিয় সংশোধন ঘটছে তা নির্দেশ করার জন্য এই ধরনের প্রস্তাবনা ভিন্নভাবে রেন্ডার করা হয়।
ব্লুটুথ
নতুন সর্বজনীন পদ্ধতি fetchUuidsWithSdp()
এবং getUuids()
অ্যাপগুলিকে দূরবর্তী ডিভাইস দ্বারা সমর্থিত বৈশিষ্ট্যগুলি (UUIDs) নির্ধারণ করতে দেয়৷ fetchUuidsWithSdp()
এর ক্ষেত্রে, সিস্টেম UUID সমর্থিত পেতে রিমোট ডিভাইসে একটি পরিষেবা আবিষ্কার করে, তারপর ফলাফলটি ACTION_UUID
অভিপ্রায়ে সম্প্রচার করে।
UI টুলকিট
নতুন পদ্ধতি setUserVisibleHint()
এবং getUserVisibleHint()
একটি খণ্ডটি বর্তমানে ব্যবহারকারী-দৃশ্যমান কিনা তার একটি ইঙ্গিত সেট করতে দেয়। দৃশ্যমান খণ্ডের জন্য লোডার চালানো না হওয়া পর্যন্ত সিস্টেমটি এমন খণ্ডগুলির শুরুকে পিছিয়ে দেয় যেগুলি ব্যবহারকারীর কাছে দৃশ্যমান নয়। দৃশ্যমানতার ইঙ্গিতটি ডিফল্টরূপে "সত্য"।
গ্রাফিক্স
-
SurfaceTexture
এ নতুন পদ্ধতিsetDefaultBufferSize(int, int)
ছবির বাফারগুলির ডিফল্ট আকার সেট করে।Canvas
(lockCanvas(Rect)
এর মাধ্যমে), অথবা OpenGL ES (একটি EGLSurface এর মাধ্যমে) ছবি তৈরি করার সময় এই পদ্ধতিটি ছবির আকার সেট করতে ব্যবহার করা যেতে পারে। - GL_OES_EGL_image_external OpenGL ES এক্সটেনশন -
GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES
,GL_SAMPLER_EXTERNAL_OES
GL_TEXTURE_EXTERNAL_OES
GL_TEXTURE_BINDING_EXTERNAL_OES
, এবং
অ্যাক্সেসযোগ্যতা
-
RemoteViews
এর ক্লায়েন্টরা এখন স্ফীত বিন্যাসে যেকোনো ভিউ-এর বিষয়বস্তুর বিবরণ সেট করতে এবং পেতেsetContentDescription()
পদ্ধতি ব্যবহার করতে পারে। -
getMaxScrollX()
,getMaxScrollY()
,setMaxScrollX()
, এবংsetMaxScrollY()
পদ্ধতিগুলি অ্যাপগুলিকেAccessibilityRecord
অবজেক্টের জন্য সর্বাধিক স্ক্রোল অফসেট পেতে এবং সেট করতে দেয়। - যখন স্পর্শ-অন্বেষণ মোড সক্ষম করা হয়, তখন একটি নতুন সুরক্ষিত সেটিং
ACCESSIBILITY_SPEAK_PASSWORD
নির্দেশ করে যে ব্যবহারকারী আইএমই-কে পাসওয়ার্ড ক্ষেত্রে লিখিত পাঠ্য বলতে অনুরোধ করেন কিনা, এমনকি যখন একটি হেডসেট ব্যবহার না হয়। ডিফল্টরূপে, কোনো হেডসেট ব্যবহার না করা পর্যন্ত কোনো পাসওয়ার্ড পাঠ্য বলা হয় না।
টেক্সট টু স্পিচ
- নেটওয়ার্ক TTS সমর্থন অনুসন্ধান এবং সক্ষম করার জন্য নতুন পদ্ধতি
getFeatures()
যোগ করে। - একটি নতুন শ্রোতা শ্রেণী যোগ করে,
UtteranceProgressListener
, যে ইঞ্জিনগুলি বক্তৃতা-সংশ্লেষণ ত্রুটির বিজ্ঞপ্তি পেতে নিবন্ধন করতে পারে।
ডাটাবেস
- একটি নতুন
CrossProcessCursorWrapper
ক্লাস সামগ্রী প্রদানকারীদের একটি ক্রস-প্রসেস কোয়েরির জন্য আরও দক্ষতার সাথে ফলাফল ফেরত দিতে দেয়। নতুন ক্লাস কার্সার মোড়ানোর জন্য একটি দরকারী বিল্ডিং ব্লক যা দূরবর্তীভাবে প্রসেসগুলিতে পাঠানো হবে। এটি স্বাভাবিকCursor
অবজেক্টকেCrossProcessCursor
অবজেক্টে স্বচ্ছভাবে রূপান্তর করতে পারে।CrossProcessCursorWrapper
ক্লাস সাধারণ পারফরম্যান্স সমস্যা এবং বিষয়বস্তু প্রদানকারীদের বাস্তবায়ন করার সময় অ্যাপ্লিকেশনের সম্মুখীন হওয়া বাগগুলিকে ঠিক করে। -
CursorWindow(java.lang.String)
কনস্ট্রাক্টর এখন ইনপুট হিসাবে একটি নাম স্ট্রিং নেয়। সিস্টেমটি আর স্থানীয় এবং দূরবর্তী কার্সার উইন্ডোগুলির মধ্যে পার্থক্য করে না, তাইCursorWindow(boolean)
এখন অবহেলিত।
অভিপ্রায়
ডিভাইসে সাধারণ ধরনের অ্যাপ্লিকেশানগুলিকে লক্ষ্য করার জন্য নতুন বিভাগ যোগ করে, যেমন CATEGORY_APP_BROWSER
, CATEGORY_APP_CALENDAR
, CATEGORY_APP_MAPS
, এবং আরও অনেক কিছু৷
ক্যামেরা
-
MediaMetadataRetriever
নতুন ধ্রুবকMETADATA_KEY_LOCATION
যোগ করে যাতে অ্যাপগুলিকে একটি ছবি বা ভিডিওর জন্য অবস্থানের তথ্য পুনরুদ্ধার করতে দেয়৷ -
CamcorderProfile
QVGA (320x240) রেজোলিউশন প্রোফাইল যোগ করে। গুণমান স্তরQUALITY_QVGA
এবংQUALITY_TIME_LAPSE_QVGA
ধ্রুবক দ্বারা প্রতিনিধিত্ব করা হয়। -
setVideoStabilization()
,getVideoStabilization()
, এবংisVideoStabilizationSupported()
সেট করা নতুন পদ্ধতি আপনাকেCamera
জন্য ভিডিও স্ট্যাবিলাইজেশন পরীক্ষা ও পরিচালনা করতে দেয়।
অনুমতি
নিম্নলিখিত নতুন অনুমতি আছে:
- android.Manifest.permission#READ_SOCIAL_STREAM এবং android.Manifest.permission#WRITE_SOCIAL_STREAM: একটি সিঙ্ক অ্যাডাপ্টারকে শেয়ার করা পরিচিতি প্রদানকারীর একটি পরিচিতিতে সামাজিক স্ট্রিম ডেটা পড়তে এবং লিখতে অনুমতি দিন।
অ্যান্ড্রয়েড 4.0.3 (এপিআই লেভেল 15) এ সমস্ত API পরিবর্তনের বিশদ দর্শনের জন্য, API পার্থক্য রিপোর্ট দেখুন।
API স্তর
অ্যান্ড্রয়েড 4.0.3 API-কে একটি পূর্ণসংখ্যা শনাক্তকারী বরাদ্দ করা হয়েছে— 15 — যা সিস্টেমেই সংরক্ষিত থাকে। এই শনাক্তকারী, যাকে "API স্তর" বলা হয়, এটি সিস্টেমকে সঠিকভাবে নির্ধারণ করতে দেয় যে একটি অ্যাপ্লিকেশন সিস্টেমের সাথে সামঞ্জস্যপূর্ণ কিনা, অ্যাপ্লিকেশন ইনস্টল করার আগে।
আপনার অ্যাপ্লিকেশানে Android 4.0.3-এ প্রবর্তিত APIগুলি ব্যবহার করতে, আপনাকে একটি Android প্ল্যাটফর্মের সাথে অ্যাপ্লিকেশন কম্পাইল করতে হবে যা API স্তর 15 বা উচ্চতর সমর্থন করে৷ আপনার প্রয়োজনের উপর নির্ভর করে, আপনাকে <uses-sdk>
উপাদানটিতে একটি android:minSdkVersion="15"
অ্যাট্রিবিউট যোগ করতে হতে পারে।
আরও তথ্যের জন্য, API লেভেল ডকুমেন্ট দেখুন।