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

안드로이드(클라이언트) - 자바(서버) 이미지 통신

0 추천

저는 지금 서버에 저장되어있는 이미지를 안드로이드 스튜디오로 제작한 어플에 띄우는 코드를 구현중입니다.

자바-자바끼리의 통신은 알겠는데 안드로이드 스튜디오로 받으려고 하니까 클라이언트에 이미지 저장을 어떻게 하고, 그거를 다시 어떻게 어플에 띄우는지가 문제입니다

try {
					DatagramSocket ds = new DatagramSocket(8888);
					File file = null;
					DataOutputStream dos = null;
					
					while(true) {
						DatagramPacket dp = new DatagramPacket(buf, buf.length);
						ds.receive(dp);
						String str = new String(dp.getData()).trim();
						
						if (str.equals("start")) {
		                    dp = new DatagramPacket(new byte[1024], 1024);
		                    ds.receive(dp);
		                    str = new String(dp.getData()).trim();
		                    file = new File("C:/hyebin/hyebin/" + str);
		                    dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)));
		                    
						} else if (str.equals("end")) {
							System.out.println("전송완료");
							dos.close();
							ds.close();
							break;
						} else {
	                    
							dos.write(str.getBytes(), 0, str.getBytes().length);
						}
					}
				}

자바-자바로 먼저 해봤는데 위 코드는 수신측(클라이언트) 코드입니다. 이거를 변형해서 안드로이드 스튜디오로 바꾸면 될 것 같은데 혹시 방법 아시는 분있나요...ㅠ

gpqls (140 포인트) 님이 2020년 5월 29일 질문

1개의 답변

0 추천
안드로이드에서 적용시킨건 아니지만, 웹 제작할 때 서버에 있는 이미지를 웹에 띄우고 싶을 땐 웹에서 src로 하면 편하긴 한데 서버쪽에서 받아올 때 두가지 방법이 있는 걸로 알고있습니다.

base 64 string 으로 변환(서버) -> 전송 - > 웹(base 64그대로 이미지 적용)

혹은 url 형태로 만들어서 보낼 수 있습니다. 그 용어가 떠오르지는 않지만, 이미지 url 구글링 해보시면 나올 것 같네요.

안드로이드에서도 똑같이 적용해도 되는지 안되는 진 모르지만 참고하시면 좋을 것 같네요

base 64 string / 이미지 URL
꿀개 (2,440 포인트) 님이 2020년 5월 31일 답변
...