2014-12-22 2 views
1

Я использую этот код в .net веб-сервиса для отправки изображения в качестве байтового массива:Чтение байтовый массив в Android с помощью ksoap2

public byte[] getImage() 
{ 
    byte[] img; 
    .... 
    return img; 
} 

Как читать этот массив байтов, используя ksoap2 и преобразовать его в растровое изображение ?

Можете ли вы объяснить это простым кодом.

Update: Этот код я использую в андроида для чтения данных из веб-службы:

 String SOAP_ACTION = WebServiceNameSpace + GetImage; 
     String NAMESPACE = WebServiceNameSpace; 
     String METHOD_NAME = GetImage; 
     String URL = WS_URL; 

     SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
     SoapSerializationEnvelope Envelope = new SoapSerializationEnvelope(
       SoapEnvelope.VER11); 
     Envelope.dotNet = true; 
     Envelope.setOutputSoapObject(request); 
     HttpTransportSE transport = new HttpTransportSE(URL); 
     transport.call(SOAP_ACTION, Envelope); 
     SoapPrimitive primetive = (SoapPrimitive) Envelope.getResponse(); 
     return primetive.toString(); 
+0

У вас уже есть клиент веб-сервиса для вашего приложения для Android, или у вас тоже есть проблемы с получением данных? – rekaszeru

+0

yes У меня есть веб-сервис, и у меня есть код Android с помощью SoapObject для получения данных из этой веб-службы, но я не знаю, как оживить byte [] datatype – bebosh

+0

. Пожалуйста, поделитесь своим сервисом и с java-кодом, чтобы мы могли помочь вам работая от этого. – rekaszeru

ответ

2

Учитывая, что вы потребляли веб-сервис успешно, и извлекаются байты, все, что вам нужно сделать, это для декодирования данных и извлекать из нее Bitmap:

final SoapPrimitive primitive = (SoapPrimitive) Envelope.getResponse(); 
final String imgData = primitive.toString(); 
if (imgData != "") 
{ 
    byte[] imgBytes = Base64.decode(imgData, Base64.DEFAULT);   
    final Bitmap bitmap = BitmapFactory.decodeByteArray(imgBytes, 0, imgBytes.length); 
    // TODO: set this bitmap into an ImageView or handle it as you wish 
} 

Если у вас есть проблемы с декодированием части, пожалуйста, обратитесь к this answer and its links тоже.

+0

Спасибо большое rekaszeru, вот что мне нужно :) – bebosh

 Смежные вопросы

  • Нет связанных вопросов^_^