2011-01-22 4 views
13

मेरे सभी ऐप्स समान साझा किए गए हैं UserId। मैं अपने वर्तमान ऐप की कक्षा का उपयोग करके किसी अन्य ऐप की कक्षा शुरू करना चाहता हूं। मैं इरादा अतिरिक्त उपयोग करना चाहता हूं लेकिन मैं इरादे यूआरएल का उपयोग नहीं करना चाहता हूं। मैं भी अपने लक्षित गतिविधि के ऐप के एंड्रॉइडमैनेफिक्स को नहीं बदलना पसंद करूंगा।एंड्रॉइड इंटेंट्स: किसी अन्य ऐप से क्लास नाम का उपयोग करके गतिविधि शुरू करें जिसमें समान साझा किया गया है UserId

+2

'मेरे सभी ऐप्स समान साझा किए गए हैं IserId' मैं अत्यधिक ऐसा करने का सुझाव नहीं दूंगा। – Falmarri

+0

यह एक उपयोगकर्ता परिप्रेक्ष्य से जरूरी है जो एक ऐप लॉग में लॉग इन करना भी दूसरों के साथ लॉग इन करता है। मैं या तो लॉगिन कुकी को अपने साझा यूज़र आईडी में लॉक कर सकता हूं या मैं इसे सभी ऐप्स पर सार्वजनिक रूप से उपलब्ध करा सकता हूं। इसके अलावा सड़क को डाउन करना संभव नहीं है एक साझा यूज़र आईडी को उस ऐप में जोड़ें जिसमें बिना किसी अनइंस्टॉल और डेटा की हानि की आवश्यकता होती है (जब तक वे इसे भविष्य में रिलीज़ में ठीक नहीं करते)। @ फाल्मररी, सब कुछ एक तरफ, मैं अभी भी जानना चाहूंगा कि साझा यूज़र आईडी का उपयोग न करना क्यों पसंद किया जाता है। –

उत्तर

30

आपके द्वारा साझा यूज़र आईडी सेट होने के बाद से यह बहुत आसान है।

Intent res = new Intent(); 
String mPackage = "com.your.package"; 
String mClass = ".actYouAreLaunching"; 
res.setComponent(new ComponentName(mPackage,mPackage+mClass)); 
startActivity(res); 

और यह सब कुछ है। आप सामान्य रूप से इरादे अतिरिक्त जोड़ सकते हैं।

+0

आप 'Intent.setClassName (स्ट्रिंग पैक, स्ट्रिंग क्लासनाम) का उपयोग कर' नया घटक नाम (...) 'को छोड़ सकते हैं। –

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