안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요. 저는 서버에서 base64로 코딩된 이미지를 받아서 안드로이드 어플에서 디코딩 하는 코드를 만들고 있는데요.
이곳저곳 찾아본 소스로 디코딩을 해봐도 계속 이 메시지만 뜨네요.
--- SkImageDecoder::Factory returned null
왜이러는 걸까요ㅜㅜ 아래는 인코딩된 base64이미지를 출력했을때의 문자구요.
소스는 이 문자 밑에 적을께요. 도움 부탁드려요.
<img src="data:image/jpeg;base64,%2F9j%2F4AAQSkZJRgABAQAAAQABAAD%2F2wCEAAkGBggGBQkIBwgVCQkKDRYODQwMDRoTFBAWHxwh IB8cHh4jJzIqIyUvJR4eKzssLzM1ODg4ISo9NTAqQTIrODUBCQoKDQsNGQ4OGTUkHiQ0NTUq NTU1NTU1NTU0NTQ1LzU0NTU1NDU1NSw1MzQ1NTU2NSk1LzUsNDUpNSw1KTQzLP%2FAABEIADAA MAMBIgACEQEDEQH%2FxAAaAAEAAgMBAAAAAAAAAAAAAAAABQYBAgcD%2F8QAKxAAAQMDAwIFBAMA AAAAAAAAAgEDBAAFERIhMQZRFCJBYZETYsHwU3HS%2F8QAGQEAAwADAAAAAAAAAAAAAAAABAUG AAEC%2F8QAIhEAAQMDBAMBAAAAAAAAAAAAAgABEgMRMhMUMVFBgdFx%2F9oADAMBAAIRAxEAPwDu NYXis0rFir0%2FqSM1Z5MuO81LRgm0IWpKYTWSCmSTOnnPHotIHUkZ2zxpcl5qH9cnEEXZKYXQ SiuCXGrvx6pURbDh222S3%2BnX3ZzwhHHS%2FGMtLamqIoiIipJhTXbtS5lDuVsiPdRyHYLxBIFB YjGOptDRCUhUSUUwgLv3ozSG8bPz746S3XPK7ceue1d04rNKUGmSUpUI91VbWJDjLjjiONFp NEiOrheeUHHauhEixa65IxDJ7Kq2rqOPaW9cG1Cz9ZoMoc908CiZRPMC4xqXjal26ij3ZvXP tIvfRbPCBPdDIqmVTYEznSnO1QzcdxI7KKGCFoEJPfSlauMmrDwomSJoxFPfStUG1pXl5%2FXU %2Fr1Ix8dWb4uwUqEa6qtj7zbTbjim4ekEWI6mV%2FtRqbqfISHJrKgExPF7pVfv9j8aHimG9UgE 8w%2Fyj232z2%2BF5qwUrYG4FIVowaoMSVCiwxdaQw3FeNv3et37e2Dak6PlTlcZ%2BKn7hG8G%2BUxp vW0u8hsU3T7x%2FKevKbpvi3xvGPDLeBRZFcx2y5X7y%2FCenK78H7p7SSjaPKK8rBYghh4p1vQ%2B aeQPVpP9L6%2FCe9hpSgDMjKRJvTBqYxZf%2F9k%3D"/>
String serverResponse = "" + result.get(0);
byte[] decodedString = Base64.decode(serverResponse, Base64.DEFAULT);
imgMap = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); <-여기서 imgMap에 null이 들어가요.
byte[] decodedString = Base64.decode(serverResponse, Base64.DEFAULT);
imgMap = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); <-여기서 imgMap에 null이 들어가요.




<img src="data:image/jpeg;base64 같은 것은 이미지 데이터가 아닌 듯 한데요. 이런 문자는 빼신 것인가요?
그리고 특히 base64로 인코딩하면 %문자가 나오면 안됩니다.
아무래도 데이터가 잘 못 된 듯 한데. 우선 url 인코딩이 된 이미지 경로인지 부터 확인해보시기 바랍니다.