2015-05-28 12 views
5

मैं वर्तमान में एंड्रॉइड ऐप पर पुश नोटिफिकेशन भेजने और प्राप्त करने के लिए parse का उपयोग कर रहा हूं।एंड्रॉइड पार्स, नोटिफिकेशन और बिल्ड टाइप

defaultConfig { 
    applicationId "com.example.myapp" 
    ... 
} 

buildTypes { 
    debug { 
     applicationIdSuffix ".debug" 
     ... 
    } 
    release { 
     ... 
    } 
} 

अब मैं पार्स में देख सकते हैं कि नए प्रतिष्ठानों applicationId क्षेत्र के साथ पंजीकृत हैं: जब तक मैं डीबग बिल्ड प्रकार के लिए मेरी build.gradle के लिए एक आवेदन आईडी प्रत्यय जोड़ा
सब कुछ ठीक था com.example.myapp.debug, इसलिए में मैनिफ़ेस्ट फ़ाइल मैं कोड का निम्न भाग का प्रयोग किया:

<receiver 
     android:name="com.parse.GcmBroadcastReceiver" 
     android:permission="com.google.android.c2dm.permission.SEND" > 
     <intent-filter> 
      <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
      <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> 

      <category android:name="${applicationId}" /> 

     </intent-filter> 
    </receiver> 

ऐसा मैंने सोचा पंजीकरण निर्माण के प्रकार के अनुसार गतिशील होगा।

वास्तव में यह काम नहीं करता है: .debug प्रत्यय के साथ पंजीकृत प्रतिष्ठानों में GCMSenderId और न ही DeviceToken है, और इसलिए मुझे कोई सूचना प्राप्त नहीं हो सकती है। मुझे स्पष्ट रूप से एक बिंदु याद आ रहा है, या मुझे समझ में नहीं आया कि पंजीकरण कैसे काम करता है, लेकिन मैं यह नहीं समझ सकता कि इसे कैसे ठीक किया जाए।
क्या पार्स एप्लिकेशन का उपयोग करने के लिए आवेदन का उपयोग करता है, या असली पैकेज नाम (आर के लिए उपयोग किया जाता है)?

क्या कोई भी अलग बिल्ड प्रकार (एप्लिकेशनआईडी प्रत्यय) के साथ पार्स अधिसूचनाओं को संभालने में कामयाब रहा?

उत्तर

5

ठीक है, मैंने अंततः इसे समझ लिया। मैं अनुमति घोषणा में गतिशील applicationId जोड़ने के लिए ...

<permission 
    android:name="${applicationId}.permission.C2D_MESSAGE" 
    android:protectionLevel="signature" /> 

<uses-permission android:name="${applicationId}.permission.C2D_MESSAGE" /> 

समस्या हल भूल गया।

+1

यदि यह आपको बेहतर महसूस करता है, तो मैं एक ही चीज़ में भाग गया और आपके "बेकार विषय" ने मुझे खुद से बचाया (और अधिक दर्द)। :) धन्यवाद –

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