Android 16-এ প্রোফাইলিং মডিউল চালু করা হয়েছে এবং এটি অ্যাপগুলিকে ফিল্ডে থাকা পাবলিক ডিভাইসে Perfetto ব্যবহার করে প্রোফাইলিং ডেটা সংগ্রহ করতে দেয়।
- অ্যাপ জাভা হিপ ডাম্প, হিপ প্রোফাইল, স্ট্যাক স্যাম্পলিং বা সিস্টেম ট্রেস ব্যবহার করে প্রোফাইলিংয়ের অনুরোধ করতে পারে এবং প্রতিটির জন্য বেছে নেওয়া কনফিগারেশন সেট করতে পারে।
- অ্যাপ নির্দিষ্ট ইভেন্টের ট্রেস পাওয়ার জন্য আগ্রহ রেজিস্টার করতে পারে এবং সিস্টেম অ্যাপের জন্য ট্রেস শুরু ও বন্ধ করতে পারে।
- ফলাফল থেকে তথ্য সরিয়ে দেওয়া হয় যাতে শুধুমাত্র অনুরোধকারী প্রক্রিয়া সম্পর্কিত তথ্য থাকে এবং অ্যাপের স্টোরেজ ডাইরেক্টরিতে ডেলিভার করা হয় যাতে অ্যাপ সেটি আরও প্রসেস করতে পারে।
- অনুরোধের সংখ্যা সীমিত করা হয় এবং সেগুলি পূরণ করা হবে কিনা সেই ব্যাপারে কোনও গ্যারেন্টি দেওয়া হয় না।
মডিউল বাউন্ডারি
- Mainline APEX প্রোফাইল করা -
com.google.android.profiling:- প্রোফাইলিং API সারফেস (Java):
- কোডের লোকেশন:
packages/modules/Profiling/framework - প্রসেস:
boot_class_path
- কোডের লোকেশন:
ProfilingService(Java):- কোডের লোকেশন:
packages/modules/Profiling/service - প্রসেস:
system_server
- কোডের লোকেশন:
- প্রোফাইলিং API সারফেস (Java):
প্যাকেজ ফর্ম্যাট
প্রোফাইলিং মডিউলটি APEX প্যাকেজ (com.google.android.profiling) হিসেবে শিপ করা হয়।
মডিউলে দুটি JAR ফাইল থাকে:
framework-profiling.jar: কলার ইন্ট্যার্যাক্ট করে এমন API সারফেস থাকে এতে। এটি হল বুটক্লাসপাথের অংশ।service-profiling.jar: একটি নতুন সিস্টেম পরিষেবা,ProfilingServiceরয়েছে। সিস্টেম সার্ভার প্রসেস দ্বারা লোড করা হয়।
ডিপেন্ডেন্সি
এই মডিউলের কোনও এক্সটার্নাল নির্ভরতা নেই।