আমি কীভাবে আমার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটিকে প্রোফাইল করতে পারি? [বন্ধ]


93

আমার অ্যান্ড্রয়েড অ্যাপে কোথায় বাধা রয়েছে তা খুঁজে বার করতে হবে।

আমি কোন প্রোফাইলিং সরঞ্জাম বা কৌশল ব্যবহার করতে পারি?


আমি অ্যান্ড্রয়েডের সাথে পরিচিত নই। আপনি কোনও ডিবাগারের অধীনে অ্যাপটি চালাতে পারেন যা আপনি বাধা দিতে পারেন? যদি তা হয় তবে এই পদ্ধতিটি কাজ করে: stackoverflow.com/questions/375913/…
মাইক ডুনলাভে

মিম, আকর্ষণীয়। সামান্য শ্রম-নিবিড়, তবে আরও সুস্পষ্ট কর্মক্ষমতা সমস্যা চিহ্নিত করার জন্য সম্ভাব্য কার্যকর। ধন্যবাদ
teedyay

আপনি কীভাবে এটি ভাবতে পারেন তা আমি বুঝতে পেরেছি: stackoverflow.com/questions/2624667/…
মাইক ডানলাভে

আজকাল আপনি Eclipse এর ভিতরে দুর্দান্ত প্রোফাইলিং করতে পারেন। ট্রেসভিউ ইত্যাদির স্বতন্ত্র / ম্যানুয়াল প্রবর্তন ভুলে যান আমি আরও বিশদ সহ সে সম্পর্কে একটি ব্লগ নিবন্ধ লিখতে আশা করি। আপনার আরও বিশদ প্রয়োজন হলে আমাকে পিং করুন।
করোলডেপকা

4
আপনি পরামর্শ দিচ্ছেন ট্রেসভিউ বা ডিডিএমএসের চেয়ে ভাল কিছু আছে। এটা কি?
পেরি হার্টম্যান

উত্তর:


37

আপনি ট্রেসভিউ ব্যবহার করতে পারেন। এটি আদর্শ থেকে অনেক দূরে, তবে কাজ করে। এই নিবন্ধটি এটি কীভাবে ব্যবহার করবেন তা বর্ণনা করে।


4
যখন আমি এটি পরিচালনা করি এটি বলছে কমান্ড-লাইন সংস্করণটি অবচিত হয়ে যায় এবং তারপরে এটি উপস্থিত হয়। নতুন পদ্ধতি কি?
gonzobrains

18

ডিডিএমএস অ্যান্ড্রয়েডের জন্য সেরা। ডিফল্টরূপে এটি এডিটি প্লাগইন সহ অন্তর্ভুক্ত হয়।

বিশদ উদাহরণ সহ এই দস্তাবেজটি আপনাকে ডিডিএমএস মোকাবেলা করতে সহায়তা করবে।


স্মৃতি বিশ্লেষণের জন্য, Eclipse MAT চেষ্টা করুন


4
ডিডিএমএস সম্পর্কে অ্যান্ড্রয়েড ডক্স: বিকাশকারী.অ্যান্ড্রয়েড.
com

11

এটি আপনি যা পরীক্ষা করতে যাচ্ছেন তা নির্ভর করে।

আপনি যদি অ্যান্ড্রয়েডের জন্য অ্যাপ্লিকেশনগুলি বিকাশ করেন তবে আপনার উচিত টাইমিংগার ক্লাসটি ব্যবহার করে। এই নিবন্ধটি একবার দেখুন , টিমিংলগার সহায়ক শ্রেণীর ব্যবহারের বিবরণ দিন।

একটি খুব ভাল সরঞ্জামটি জেমিটার এবং অ্যান্ড্রয়েডের পাশাপাশি একটি প্লাগইন রয়েছে is

যদি আপনি বাহ্যিক সরঞ্জামগুলি ব্যবহার না করতে চান তবে অতিপ্রমিত উপায়, অতিবাহিত সময় পরিমাপ করার জন্য আপনাকে অবশ্যই System.nanoTime () ব্যবহার করতে হবে। আপনার কারেন্টটাইমমিলিস ব্যবহার করা উচিত নয়, কারণ এটি প্রাচীর-ঘড়ির সময় উত্তরগুলি পরিমাপ করে, যেমন কোনও কম্পিউটারের ঘড়িটি নিখুঁত নয় (এগুলি সবসময় মাঝেমধ্যে সংশোধন করা দরকার) এমন একটি প্রক্রিয়া রয়েছে যা চলমান থাকে এবং নিয়মিতভাবে সিস্টেম ঘড়িতে ছোট সংশোধন জারি করে। লিপ দ্বিতীয় সংশোধন উল্লেখ না।

যদিও কারেন্টটাইমমিলিস প্রায়শই ব্যবহৃত হয়, এখনও অতিবাহিত সময় এবং সময় পরিমাপ করা ভুল। যাইহোক, অনুরোধটি যেমন কিছুটা সময় নেয় তাই আপনার খুব ছোট ব্যবধানে সঠিকভাবে সময় আশা করা উচিত নয়। তবে অ্যান্ড্রয়েডের সাথে কাজ করার বিষয়টি হওয়া উচিত নয়।

আমি আপনাকে একটি উদাহরণ দেখাব:

long startTime = System.nanoTime();

// run/call the method

long endTime = System.nanoTime();
long diff = endTime - startTime ;
System.out.println("Elapsed milliseconds: " + diff /1000000);

আপনি এই নিখরচায় গ্রন্থাগারটিও দেখতে পারেন: http://jetm.void.fm/

আপনি জেমিটারের জন্য টিউটোরিয়ালটিও খুঁজে পেতে পারেন ।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.