Tech. Forum 개발자들을 위한 정보 공유의 장입니다
닫기

Tech.Forum

BaasInstallation.isUseBaasPush(true); 에 의한 오류 발생

#1

BaasInstallation.isUseBaasPush(true); 의 메서드를 추가하는 순간 앱이 시작하자마자 오류가 발생합니다.

BaasApplication 클래스는 아래와 같고, 그에 대한 exception stack trace는 그 아래와 같습니다.

public class BaasApplication extends Application{
@Override
public void onCreate() {
super.onCreate();

    // debugMode true 시 Log를 확인 하실 수 있습니다. 앱 deploy 시 삭제 권장
    Baas.debugMode(true);
    Baas.init(this, 1, "caf88276-7221-4de7-a47a-c0a41f35f119");
    BaasInstallation.getCurrentInstallation().serverSaveInBackground(new BaasSaveCallback() {

        @Override
        public void onSuccess(BaasException e) {
            if (e != null) {
                // 성공
                // Push 기능 사용시 필수!
                BaasInstallation.isUseBaasPush(true);
            } else {
                // 실패
            }
        }
    });
}

}

12-04 10:57:40.188 10779-10822/awesomebros.inggo E/GCMBaseIntentService﹕ Wakelock reference is null
12-04 10:57:40.188 10779-10822/awesomebros.inggo W/dalvikvm﹕ threadid=16: thread exiting with uncaught exception (group=0x4224a700)
12-04 10:57:40.193 10779-10822/awesomebros.inggo E/AndroidRuntime﹕ FATAL EXCEPTION: IntentService[GCMIntentService-263626299578-1]
com.skt.baas.exception.BaasRuntimeException: 업데이트 시 objectId는 필수입니다.
at com.skt.baas.api.BaasServerUpsertOperation.validateCustom(BaasServerUpsertOperation.java:16)
at com.skt.baas.api.BaasOperation.validateCommonConcern(BaasOperation.java:29)
at com.skt.baas.api.BaasOperation.apply(BaasOperation.java:71)
at com.skt.baas.api.BaasObject.serverAsyncOpWOCallback(BaasObject.java:119)
at com.skt.baas.api.BaasObject.serverUpsertInBackground(BaasObject.java:151)
at com.skt.baas.api.BaasInstallation.serverUpsertInBackground(BaasInstallation.java:182)
at com.skt.baas.api.PushService.onRegistered(PushService.java:33)
at com.google.android.gcm.GCMBaseIntentService.handleRegistration(GCMBaseIntentService.java:295)
at com.google.android.gcm.GCMBaseIntentService.onHandleIntent(GCMBaseIntentService.java:196)
at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:176)
at android.os.HandlerThread.run(HandlerThread.java:61)

0 Likes

#2

안녕하세요. T developers입니다. 


우선 아래와 같은 에러가 발생하기 위해서는 Installation 정보가 Table 상에 있는지 확인해야 합니다.
T developers 사이트 내에서 Installation 테이블에 InstallationId 가 정상적으로 삽입되어 있는지 체크해주시고,
SDK Version / Demo Version 도 함께 전달해주시면 테스트가 더 용이할 것으로 보입니다.
Object ID 를 조회하는 부분 소스 전달드립니다.

BaasInstallation.getCurrentInstallation().serverSaveInBackground(new BaasSaveCallback() {

 

@Override
public void onSuccess(BaasException e) {
if (e != null) {
// 실패
else {
// 성공
// Push 기능 사용시 필수!
BaasLogger.log(BaasInstallation.getCurrentInstallation().getObjectId());
BaasInstallation.isUseBaasPush(true);
}
}
});
 

감사합니다. 

0 Likes