Android 앱이 있으며 GCM을 사용했으며 기기 등록 ID 창을 표시하거나 앱을 테스트하기 위해 로그 고양이에 표시하려고합니다. 에뮬레이터에 있던 로그 고양이에 ameesage가있었습니다. regiseration ID하지만 그것을 볼 필요가 어떻게 ??? 또한메시지 창에 기기 등록 ID를 표시하는 방법
내 모바일 정지 프로젝트에 응용 프로그램 ... 그것은 에뮬레이터에서 표시 didnot 있지만 메시지가 나타 났을를 테스트하고 나는이 권한
이 메시지가 사라<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" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
댓글을 달았 때
클래스
package com.example.elarabygroup; import com.google.android.gcm.GCMBaseIntentService; import com.google.android.gcm.GCMRegistrar; import android.content.Context; import android.content.Intent; import android.os.PowerManager; import android.util.Log; public class GCMIntenetService extends GCMBaseIntentService { private static final String GCM_SENDER_ID = "1111111111"; public GCMIntenetService() { super(); } @Override protected void onRegistered(Context context, String registrationId) { Log.i(TAG, "Device registered: regId = " + registrationId); GCMRegistrar.setRegisteredOnServer(context, true); } @Override protected void onUnregistered(Context context, String registrationId) { Log.i(TAG, "Device unregistered"); if (GCMRegistrar.isRegisteredOnServer(context)) { String regId = ""; Log.i(TAG, "unregistering device (regId = " + regId + ")"); GCMRegistrar.setRegisteredOnServer(context, false); } else { // This callback results from the call to unregister made on // ServerUtilities when the registration to the server failed. Log.i(TAG, "Ignoring unregister callback"); } } @Override protected void onError(Context context, String errorId) { // push error processing } @Override protected void onMessage(Context arg0, Intent arg1) { Log.i(TAG, "Received message"); Log.i(TAG, "EXTRAS" + arg1.getExtras()); //String message = getString(R.string.gcm_message); generateNotification(arg0, arg1.getStringExtra("Please download our new updates")); // notifies user about message } private void generateNotification(Context arg0, String stringExtra) { // TODO Auto-generated method stub } public static void registerInGCMService(Context context) { if (!checkIsGCMServiceAvailable(context)) { return; } final String regId = GCMRegistrar.getRegistrationId(context); if (regId.equals("")) { try { GCMRegistrar.register(context, GCM_SENDER_ID); } catch (Exception ex) { } } else { // Already registered } } public static boolean checkIsGCMServiceAvailable(Context context) { try { GCMRegistrar.checkDevice(context); GCMRegistrar.checkManifest(context); return true; } catch (Throwable th) { return false; } } }
을 표시 할 위치 또는 "장치 등록 코드 아래에 둘 때 사용자에게 통지 케 Boradcaste 수신기 : regId = "+ registrationId); logcat에서 다음과 같이 @ user1597833이 제안합니다. –
어디에서이 코드를 추가 할 수 있습니까? – egydeveloper
@egydeveloper 제 대답을 편집했습니다. 이제 추가 된 부분을 볼 수 있습니다. –