8월부터 targetSDK버전을 26으로 올려야 하는 이슈가 있기 때문에 큰 업데이트를 앞두고 25에서 26으로 변경실 배포까지 했는데 crash가 마구 쏟아지고, OS 8.0사용자만 발생하는 이슈라고 나온다. GcmBroadcastReceiver.java line 19 그렇다!! FCM이 아니라면 GCM 사용자의 경우 예외처리가 필요하다.방법은 JobService 또는 NotificationChannel을 사용하면 된다.JobService를 사용하기 위해선 minSDK 버전이 21이상이어야 한다. 즉 OS 5.0이상 기기에서만 쓸 수 있어서 패스~ NotificationChannel을 쓰기로 한다.기존 Notification에 채널 옵션만 추가하면 된다. 생각보다 셋팅이 간편하다.하지만 옵션질이 존재했..
날짜 정보 가져오는 것 테스트 한다고 시스템 시간을 변경했더니 빌드 할 때 앱이 죽는문제 발생.도대체 뭐가 문제인지 GCM키 확인해 보고, 코드 다시 확인하고, 위치정보 권한 받는 부분에 에러코드가 나와서삽질끝에...try catch에 걸린 오류는 java.io.IOException: SERVICE_NOT_AVAILABLE 시스템 환경설정 시간을 자동으로 설정하니 해결되었다.
GCM관련하여 Notification을 생성할 때 이미지를 보여줄 수 있다. 123456789101112131415161718192021222324252627282930313233343536 try { URL url = new URL("https://xxx.com/test.jpg"); URLConnection conn = url.openConnection(); conn.connect(); BufferedInputStream bis = new BufferedInputStream( conn.getInputStream()); Bitmap imgBitmap = BitmapFactory.decodeStream(bis); bis.close(); NotificationCompat.Builder mBuilder = n..
GCM 서버 예제 준비물 1. 이클립스에서 Java Project 생성2. 첨부된 두개의 파일을 라이브러리에 추가. 우클릭 > Build Path > Add to Build Path3. Server Key, RegID 생성.4. 코드 작성12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849package gcmServer; import java.io.IOException;import java.util.ArrayList;import java.util.List; import com.google.android.gcm.server.Message;import com.google.android.gcm.serve..