지난 15 시간 동안 문제가 발생했습니다. GCM이 Android (클라이언트 데모 소스 포함)를 시작한 것을 알고 있으며, 장치를 등록하고 ECHO_NOW 메시지를 보낸 후 곧 푸시 알림을받을 예정입니다. 여기에 내가 무슨 짓을했는지 일부 코드 조각입니다 : 내가 HTC의 코드를 실행 한GCM 용 Android 클라이언트가 푸시 알림을 수신하지 않음
이
- 하나 (4.3) 철저하게 공식 문서를 이어와 Google의 사용을 만드는 응용 프로그램을 만들어 Play 서비스 lib (froyo package)
- 메인
Activity
,IntentService
및WakefulBroadcastReceiver
확장 수신기를 만들고 선언했습니다. - 앱 패키지와 함께 GCM 콘솔을 확인했는데 올바른 발신자 ID, Android 기기에 사용 설정 푸시 알림, 지문 및 디버그 키 저장소를 확인했습니다.
- 필자는 올바른 사용 권한을 추가했으며 사용 권한 전체에서 적절한 패키지를 사용하고 Intent 작업을 수행하도록했습니다.
의 AndroidManifest.xml :
:<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.package"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="my.package.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="my.package.permission.C2D_MESSAGE" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="my.package.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>
<receiver
android:name="my.package.GcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="my.package" />
</intent-filter>
</receiver>
<service android:name="my.package.GcmIntentService" />
</application>
</manifest>
는 내가합니다 (GCM 클라이언트 데모 구현을위한 소스 코드에 포함)이를 읽은 후 푸시 알림을받을 것이라고 가정했다
// For this demo: we don't need to send it because the device
// will send upstream messages to a server that echo back the
// message using the 'from' address in the message.
처음 시도한 이후로 장치는 등록 ID를 등록하고 획득하는 데 성공했습니다.
상담자 잘못된 가정없이 푸시 알림을 했습니까
수신해야 하는가? 그렇지 않다면 무엇이 잘못 될 수 있습니까?
더 많은 코드를 게시해야합니까? 나는 많은 질문을 체크했는데 아무도이 정확한 문제를 해결하지 못했거나 해결하지 못했다.
미리 커뮤니티에 감사드립니다. 감사합니다
,
아르
편집 : 결론 : GCM 데모 클라이언트는 단지 서버 측이 실제 푸시 알림을 보내도록 GCM을 요청하기 위해 필요하다는 것을 명심해야 완벽하게 작동합니다. ECHO_NOW는 귀하를 대신하여 GCM에서 무언가를 보내 겠다는 의미는 아닙니다. 서버 측 구현!
표시된 답변 (Eran 's)이 첫 번째 것이었지만 Bat Rajat 's는 머리를 필요로하는 사람을위한 스 니펫을 제공합니다. 둘 다 고마워.