blackberry - 如何在黑莓手机中显示 URL 中的图像?

标签 blackberry

我有简单的图像网址,我想在位图字段中显示该图像。 这是我的课..但它不会给出任何结果。

public class UrlToImage
{

    public static Bitmap _bmap;
    UrlToImage(String url)
    {
        HttpConnection connection = null; 
        InputStream inputStream = null; 
        EncodedImage bitmap;
        byte[] dataArray = null;

    try 
    { 
        connection = (HttpConnection) Connector.open(url, Connector.READ, true); 
        inputStream = connection.openInputStream(); 
        byte[] responseData = new byte[10000]; 
        int length = 0; 
        StringBuffer rawResponse = new StringBuffer(); 
        while (-1 != (length = inputStream.read(responseData))) 
        { 
        rawResponse.append(new String(responseData, 0, length)); 
        } 
        int responseCode = connection.getResponseCode(); 
        if (responseCode != HttpConnection.HTTP_OK) 
        { 
        throw new IOException("HTTP response code: " 
        + responseCode); 
        } 

        final String result = rawResponse.toString(); 
        dataArray = result.getBytes(); 
    } 
    catch (final Exception ex) 
    { }

    finally 
    { 
        try 
        { 
        inputStream.close(); 
        inputStream = null; 
        connection.close(); 
        connection = null; 
        } 
        catch(Exception e){} 
        } 

        bitmap = EncodedImage.createEncodedImage(dataArray, 0,dataArray.length);
        // this will scale your image acc. to your height and width of bitmapfield

        int multH;
        int multW;
        int currHeight = bitmap.getHeight();
        int currWidth = bitmap.getWidth();
        multH= Fixed32.div(Fixed32.toFP(currHeight),Fixed32.toFP(480));//height
        multW = Fixed32.div(Fixed32.toFP(currWidth),Fixed32.toFP(360));//width
        bitmap = bitmap.scaleImage32(multW,multH);

        _bmap=bitmap.getBitmap();
        }
        public Bitmap getbitmap()
        {
        return _bmap;

        }


    }

提前致谢。

最佳答案

试试这个,但这里的 url 扩展很重要。

如果您的手机使用 wifi,则“;interface=wifi”可以正常工作,否则将无法正常工作,因此对于网址扩展,请验证以下网址

For url extensions Link

 public static Bitmap connectServerForImage(String url)
{
     HttpConnection httpConnection = null;
     DataOutputStream httpDataOutput = null;
     InputStream httpInput = null;
     int rc;
     Bitmap bitmp = null;
     try 
     {
              httpConnection = (HttpConnection) Connector.open(url+";interface=wifi");
              rc = httpConnection.getResponseCode();
              if (rc == HttpConnection.HTTP_OK) 
              {
                   httpInput = httpConnection.openInputStream();
                   InputStream inp = httpInput;
                   byte[] b = IOUtilities.streamToBytes(inp);
                   EncodedImage hai = EncodedImage.createEncodedImage(b, 0, b.length);
                   bitmp=hai.getBitmap();
               }else{
                    throw new IOException("HTTP response code: " + rc);
               }
      }catch (Exception ex) {
           System.out.println("URL Bitmap Error........" + ex.getMessage());
      } finally 
      {
       try
       {
                if (httpInput != null)
                 httpInput.close();
                if (httpDataOutput != null)
                 httpDataOutput.close();
                if (httpConnection != null)
                 httpConnection.close();

       } catch (Exception e) 
       {
           e.printStackTrace();
       }
      }
    return bitmp;
}

关于blackberry - 如何在黑莓手机中显示 URL 中的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9338971/

相关文章:

android - 将完整的机器人应用程序移植到黑莓手机上需要进行哪些转换工作?

blackberry - 处理字段的方向变化

blackberry - 如何在黑莓中获取 APN 名称?

blackberry - BlackBerry-HTML链接到App World中的应用程序

user-interface - 如何为黑莓应用程序创建自定义字体

jQuery .show() 和 BlackBerry OS5

debugging - 尝试调试时黑莓 "There is no connected BlackBerry device."

java - blackberry - java - 二维几何和碰撞包

javascript - 使用 Phonegap/WebWorks 的 Blackberry 线程过多

黑莓 - 如何获取后台应用程序进程 ID