총 게시물 39,213건, 최근 1 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[자바]

안드로이드, 파이어베이스.. 노티클릭시 동작이 제대로 되질 않습니다.

글쓴이 : n4u1 날짜 : 2018-10-27 (토) 00:47 조회 : 736
글주소 : http://www.androidside.com/B49/170452
 
  구로 오라클자바교육센터
개발회사 부설 교육기관, 현업강사 단기속성 실무강좌, 재직자환급, 구직자 무료취업
www.oraclejava.co.kr
  임베디드 시스템 마이크로비젼
임베디드 개발보드, 개발용역, IAR 컴파일러 총판, 에뮬레이터.
www.mvtool.co.kr
  서울게임아카데미
추천게임학원, 2018년 한국 소비자만족지수 1위, 고용노동부국비지원, 수강료조회
www.seoulgame.co.kr
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang


안녕하세요.


앱개발도중에 막히는 부분이 있는데 감이 전혀 안와서 질문합니다


특정상황에 노티가 오고 그 노티를 클릭하면 해당 액티비티로 이동을 해야하는데

그 동작이 잘안됩니다.

예)카톡 채팅 알람 올경우 클릭시 해당 채팅방으로 들어가지는..


파이어베이스를 디비로 사용하고있고요 ,  

FirebaseJobDispatcher 를 이용해서 백그라운드 알람도 잘돌아갑니다..

버전은 minSdkVersion 26 targetSdkVersion 28 이렇습니다



앱이 켜져있을경우에는 해당 액티비티로 정상적으로 들어가집니다만

앱이 꺼져있을경우 아래 부분에서 5라인에서  null Exception 이 발생합니다

Log를 빼면 7라인에서 발생하겠죠..

 


//contentDTO 화면 초기세팅
mDatabaseReferenceAlarm = FirebaseDatabase.getInstance().getReference();
mDatabaseReferenceAlarm.child("user_contents").child(contentKey).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
ContentDTO contentDTO = dataSnapshot.getValue(ContentDTO.class);
Log.d("lkj contentDTD", contentDTO.toString());
Log.d("lkj contentDTD", dataSnapshot.toString());
pollActivity_textView_date.setText(contentDTO.getUploadDate());
pollActivity_textView_title.setText(contentDTO.getTitle());
pollActivity_textView_contentId.setText(contentDTO.getContentId());
pollActivity_textView_contentType.setText(contentDTO.getContentType());
pollActivity_textView_description.setText(contentDTO.getDescription());
pollActivity_textView_pollMode.setText(contentDTO.getPollMode());
pollActivity_textView_hitCount.setText(String.valueOf(contentDTO.getContentHit()));
pollActivity_textView_likeCount.setText(String.valueOf(contentDTO.getLikeCount()));
pollActivity_textView_replyCount.setText(String.valueOf(contentDTO.getReplyCount()));
pollActivity_textView_userId.setText(contentDTO.getUserID());

dataSnapshot 에 데이터가 안들어가지는거 같은데


참조하는 경로에서 필요한 contentKey도 잘넘어오고..


로그아웃상태에서 안되는 상황이니 혹시 로그인 을 자동으로 하는 로직이 없어서 그런가 봤더니 

그것도 아니었습니다..


String currentId = auth.getCurrentUser().getUid();
Log.d("lkj currentId", currentId);

안열리는 액티비티에서 이걸 찍어봐도 Uid는 정상적으로 찍히기도 하고


혹시 몰라서 다시 로그인로직을 넣어봤는데도 똑같은 현상입니다..



왜 FirebaseDatabas 참조가 안되는걸까요..




질문자가 자신의 포인트 20 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 16을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

OSKiller 2018-11-01 (목) 09:18
액티비티에서 받고 계신거 같은데 앱이 꺼져 있으면 액티비티가 동작 안된 상태가 view들이 전부 초기화가 안되어 있을텐데..
댓글주소 추천 0 반대 0
     
     
n4u1 2018-11-01 (목) 20:52
[@OSKiller]답변달아주셔서 감사합니다.
그런데 제가 공부중인 단계라 잘 몰라서 그런데,
view초기화라 함은 findviewbyid로 뷰들을 찾는것 말씀하시는건가요?

그런데 해당 액티비티에서 뷰들을 찾는 단계는 지나친 이후에 파이어베이스 데이터 가져오는 부분에서 null이 발생하는 이유가 뭘까요..

그리고 액티비티들은 잘 열리는데..ㅠㅠ
댓글주소 추천 0 반대 0
이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기