2013-08-12 9 views
6

मैं इस त्रुटि के साथ बहुत संघर्ष कर रहा हूं और मैंने अभी छोड़ दिया है। हर बार जब मैं जीसीएम का उपयोग कर संदेश भेजने की कोशिश करता हूं तो यह त्रुटि लॉगकैट पर दिखाई देती है। मैं क्या करने में असफल रहा हूँ? मैंने जीसीएम अधिसूचनाएं स्थापित करने के लिए एंड्रॉइड उदाहरणों का पालन किया है। यह लॉगकैट त्रुटिप्रसारण इरादा रद्द कर दिया गया। एंड्रॉइड जीसीएम

संपादित करें: संदेश वास्तव में हो जाता है लेकिन मुझे नहीं लगता कि यह त्रुटि सामान्य है।

08-12 17:13:15.888: W/GTalkService(2237): [DataMsgMgr] broadcast intent callback: result=CANCELLED forIntent { act=com.google.android.c2dm.intent.RECEIVE cat=[com.testing.encuesta] (has extras) } 

AndroidManifest.xml

<permission android:name="com.testing.encuesta.permission.C2D_MESSAGE" 
android:protectionLevel="signature" /> 
<uses-permission android:name="com.testing.encuesta.permission.C2D_MESSAGE" /> 
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 
<uses-permission android:name="android.permission.INTERNET"></uses-permission> 
<uses-permission android:name="android.permission.VIBRATE"></uses-permission> 


<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.testing.encuesta.MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 

    </activity> 
    <activity android:name=".Inicio"> 
    </activity> 

     <receiver android:name=".GCMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND" > 
    <intent-filter> 

      <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
      <category android:name="com.testing.encuesta" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> 
      <category android:name="com.testing.encuesta" /> 
     </intent-filter> 

    </receiver> 

मेरी कक्षा GCMBroadcastReceiver

public class GCMBroadcastReceiver extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
      try { 
       String action=intent.getAction(); 
       if(action.equals("com.google.android.c2dm.intent.REGISTRATION")) 
       { 
        String registrationID=intent.getStringExtra("registration_id"); 
        Log.d("ID",registrationID); 
        String error=intent.getStringExtra("error"); 
        String unregistered=intent.getStringExtra("unregistered"); 

       } 
       else if(action.equals("com.google.android.c2dm.intent.RECEIVE")) 
       { 
        String data1=intent.getStringExtra("data1"); 
        String data2=intent.getStringExtra("data2"); 
        Toast.makeText(context, data1, Toast.LENGTH_LONG); 

       } 
      } catch (Exception e) { 
       Log.d("Error", "error en C2DM"+e.toString()); 

      } 
} 

उत्तर

6

फिक्स्ड, तो आप सिर्फ setResultCode (Activity.RESULT_OK) जोड़ने की जरूरत है; ऑनसीसिव() के अंत में; विधि

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

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