마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Service에서 외부DB입력(OkHttpClient사용). 오류??

0 추천
제가 외부DB 연동해서 사용하는데

푸시를 받고 그에 해당 값? 을 입력할떄

입력할게 많은것은 Service로 해서 OkHttp사용해서 넣는걸로 했거든요

다 잘됐는데...

실험하려고 2개의 폰에 설치해서 동시에 해봤는데 DB보니까 폰1명꺼만 입력이 됏더라구요;;

몇번해봣는데 1명꺼만 되더라구요..

동시에 여러개가 입력이 안되는거는 무슨문제때문인가요?????? 서버 문제인가요??? 알려주세요!
어렵네안드로이드 (590 포인트) 님이 2017년 2월 27일 질문
ㅋㅋㅋㅋ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
일단 DB에 뭔값이 들어가셨다는건지 모르겠지만 값이 들어가긴 들어가셨다니 통신 자체는 된다는거고 대충 DB에 들어가야 하는것이 폰번호라고 치고 안들어간다는 1개의 디바이스 디버깅은 해보셨나요??;;;
어....제말은 그. 한개의 디바이스로 테스트하면 입력이되는데 2개이상 디바이스 하면은 DB에 하나만 입력이 되요. 서버문제인가..;;; 아직 기기가없어서 동시에 2개까지밖에안해봤지만요... 서버와 디바이스가 통신이 1대1로밖에 안되는건 아니지않나요?
혹시 두개의 디바이스가 primary key까지 동일한 값을 넣는건 아닌지요?
A와B 2개의 디바이스에서 값을 올렸다면 항상 A가 올라가지 않는것인지, A혹은 B가 올라가지 않는 것인지 확인해보세요
동시에 했다는 게 동시에 두 폰에서 같이 했다는 건지, 하나 해보고 또 나머지 하나를 했다는 건지, 넣는 정보가 어떤 정보이고, db의 primary 가 겹치게 넣는 건 아닌지, 어떤 오류가 나는지 같은 정보를 올려야죠... 해보니까 안된다고만 하면 코드 잘못 짰거나, 안되는 폰이 있거나, 네트웍에서 오류가 있거나 밖에 답을 못하죠.
아 질문을 헷갈리게 해서 죄송합니다.
일단 제가 만들려고 하는것은 MDM같은 어플이구요
만들려고하는 기능중에 푸시를 받으면 핸드폰의 설치된 어플리스트목록을 가져와서 외부DB에 입력할려고합니다(입력하는시간이 걸려서 백그라운드 서비스로 했습니다, okhttp사용했습니다.). 소스를 다입력했고 구성하면서 제폰으로 푸시 날려보고 DB에 입력되는거 다 확인했습니다.

이제 테스트중에 다른사람 핸드폰에도 어플을설치하고(총2대 에 어플설치)

A, B  두 핸드폰이 푸시를 동시에 받고 이제 외부DB에 어플목록리스트를 입력합니다.

2. 그리고 DB확인해보니 둘중 하나의 디바이스만 DB에 입력이 됩니다.

3. 그래서 푸시를 처음엔 A폰, 두번째는 B폰 날려보니 제대로 입력이됩니다.

그래서 문제는 두개이상의 디바이스가 서버와 통신을 하면 하나만 입력 된다는겁니다.;;;  소스에랑 다 이상이없어서 오류 로그도 볼수 가없어요......;;;

아 그리고 DB에입력할떄는 자기자신의 핸드폰번호로 DB에 테이블을 만들어서 입력하게 끔 하였습니다...
3번 하실때 둘다 usb 연결 하고 하셨나요?
A, B 단말기 기종이 각각 어떻게 되지요?
usb로 각자 디버깅해서 어플설치하구요 A=갤럭시노트3 B= 소니 엑스페리아 입니다.
둘다 usb 떼고 동시에 말고 A폰 B폰 각각 푸시 보내보세요. 그래도 잘되는지..
단말기 설정중에 백그라운드 데이터 제한하는 설정이 있는데 이게 usb 연결 되면 전송 잘되는 케이스가 있습니다.
답변 감사합니다...!!!! DB를 보면 어떤 때는 입력이 잘되어있고 어떤떄는 안되어있고 그러네요;;;;;;

1개의 답변

0 추천
 
채택된 답변
사용 중인 db가 뭔지는 모르겠지만 db insert lock 으로 구글링 해보세요.
쎄미 (162,410 포인트) 님이 2017년 2월 28일 답변
어렵네안드로이드님이 2017년 3월 1일 채택됨
...