एंड्रॉइड इरादा स्टार्टसिटीविटीफॉर रिसेट ठीक से वापस नहीं आता है

मेरे पास मुख्य सक्रियता और इरादा सक्रियता है।

  • मुख्य सक्रियता - सामान्य मुख्य गतिविधि
  • इरादा सक्रियता - ट्विटर के लिए ओएथ अनुरोध ब्राउज़र इस गतिविधि द्वारा लॉन्च किया जाएगा

मुझे कैसे पता चलेगा कि इरादा गतिविधि सही है या नहीं? मुख्य एविटीविटी में मैंने निम्नलिखित कोड इस्तेमाल किए

एक बटन के ऑनक्लिक में मैंने उपयोग किया:

startActivityForResult(i,request_code);

मैंने भी निम्नलिखित फ़ंक्शन जोड़ा

public void onActivityResult(int requestCode,int resultCode,Intent data)
{
  if(requestCode==1) 
   {
    if(resultCode==RESULT_OK)
      {
          Toast.makeToast(getBaseContext(),"Success",Toast.LENGTH_SHORT)
      {
     else
      {
          Toast.makeToast(getBaseContext(),"Failed",Toast.LENGTH_SHORT)
      }
  }
}

लेकिन मेरे आश्चर्य के लिए मुझे ब्राउजर से पहले "असफल" मिल रहा है .. लेकिन मैं ब्राउज़र से लौटने के बाद सफलता प्रदर्शित करना चाहता हूं।

2
क्या आप अपनी दूसरी गतिविधि पर setResult को बुला रहे हैं?
जोड़ा लेखक aleph_null, स्रोत
नहीं मुझे लगता है .. बस मैंने संपर्क उदाहरण पर देखा .. क्योंकि वे सामग्री के इरादे से गुजरते हैं। INTent.ACTION_PICK वे डिफ़ॉल्ट रूप से परिणाम कोड प्राप्त कर रहे हैं। क्या सिस्टम डिफेंट के लिए यह डिफ़ॉल्ट क्रिया है?
जोड़ा लेखक shanmugamgsn, स्रोत

1 उत्तर

आपको यह सुनिश्चित करने की ज़रूरत है कि इससे पहले कि आप अपनी मंशा में सक्रिय करें, अपनी कॉल setResult() और इसे सफलता के लिए सेट करें।

1
जोड़ा
मैं आपका प्रश्न समझ नहीं पा रहा हूं।
जोड़ा लेखक Kurtis Nusbaum, स्रोत
धन्यवाद कुर्टिस। मुझे संदेह है कि मैंने संपर्क उदाहरण का पालन किया है .. क्योंकि वे सामग्री के इरादे से गुजरते हैं। INTent.ACTION_PICK वे डिफ़ॉल्ट रूप से परिणाम कोड प्राप्त कर रहे हैं। क्या सिस्टम डिफेंट के लिए यह डिफ़ॉल्ट क्रिया है?
जोड़ा लेखक shanmugamgsn, स्रोत
वास्तविक परिदृश्य मेरे पास एक अपडेट बटन है जो इस ट्विटर आशय गतिविधि को कॉल करता है जो बदले में ब्राउज़र खोलता है और ओथ टोकन शुरू करता है और यह स्वचालित रूप से मेरी मुख्य क्रियाशीलता पर रीडायरेक्ट करता है। लेकिन यहां मेरी इच्छा है कि जब यह रीडायरेक्ट करे तो मुझे अधिसूचित होने की आवश्यकता है।
जोड़ा लेखक shanmugamgsn, स्रोत
जैसा कि आपने कहा था कि मैंने context.startActivity (नया इरादा (संदर्भ, mainActivity.class)) से पहले setResult जोड़ा है; लेकिन जब मैं वापस आ गया हूं एक्टिविटी रिसेट() विधि पर इसका मान 0 है (जिसका अर्थ है RESULT_CANCELLED)। मैंने किसी भी इरादे को रद्द नहीं किया है, इसे केवल रीडायरेक्ट किया गया है?
जोड़ा लेखक shanmugamgsn, स्रोत