2012-05-13 13 views

उत्तर

-1

मैं बस की तरह अपने मुख्य गतिविधि में एक चर सेट से अपने लांचर गतिविधि उपयोग http://developer.android.com/reference/android/content/pm/PackageManager.html#getLaunchIntentForPackage(java.lang.String)

getLaunchIntentForPackage 

प्राप्त करने के लिए तो ... public static Activity activity = this; तो मैं इसे कहीं से भी संदर्भित कर सकता हूं: MainActivity.activity

आप इसे ऑनक्रेट() विधि में भी सेट कर सकते हैं, इस public static Activity activity; जैसे अपने मुख्य गतिविधि वर्ग के शीर्ष पर चर सेट अप करें, फिर ऑनक्रेट() विधि में कहीं भी activity = this; जोड़ें।

यह गतिविधि को विस्तारित करने वाली किसी भी कक्षा के लिए काम करेगा, उदाहरण के लिए public class MainActivity extends Activity हालांकि आप वेरिएबल को किसी भी वर्ग से कॉल कर सकते हैं भले ही वे गतिविधि का विस्तार न करें।

उम्मीद है कि इससे मदद मिलती है।

14

कैसे classname प्राप्त करने के लिए समझाने के लिए ली के लिए धन्यवाद, यहाँ कोड है:

String packageName = context.getPackageName(); 
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName); 
String className = launchIntent.getComponent().getClassName(); 
+0

आवेदन के className होगा ** com.android.tools.fd.runtime.BootstrapApplication की तरह सिर्फ उत्पादन कुछ कचरा ** –

संबंधित मुद्दे