Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用改型库android时发生Outofmemory异常_Java_Android_Retrofit - Fatal编程技术网

Java 使用改型库android时发生Outofmemory异常

Java 使用改型库android时发生Outofmemory异常,java,android,retrofit,Java,Android,Retrofit,我正在使用改装库从服务器下载apk文件。 由于它的8MB文件,我正在从MemoryException中获得OutofmemoryException 06-04 17:02:36.242: I/dalvikvm(32227): "AsyncTask #1" prio=5 tid=12 RUNNABLE 06-04 17:02:36.242: I/dalvikvm(32227): | group="main" sCount=0 dsCount=0 obj=0x40fc7eb8 self=0x2a

我正在使用改装库从服务器下载apk文件。 由于它的8MB文件,我正在从MemoryException中获得OutofmemoryException

06-04 17:02:36.242: I/dalvikvm(32227): "AsyncTask #1" prio=5 tid=12 RUNNABLE
06-04 17:02:36.242: I/dalvikvm(32227):   | group="main" sCount=0 dsCount=0 obj=0x40fc7eb8 self=0x2a1096a8
06-04 17:02:36.242: I/dalvikvm(32227):   | sysTid=32247 nice=10 sched=0/0 cgrp=apps/bg_non_interactive handle=705879936
06-04 17:02:36.242: I/dalvikvm(32227):   | schedstat=( 1325450565 1518168555 7526 ) utm=87 stm=45 core=0
06-04 17:02:36.242: I/dalvikvm(32227):   at java.io.ByteArrayOutputStream.expand(ByteArrayOutputStream.java:~91)
06-04 17:02:36.242: I/dalvikvm(32227):   at java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:201)
06-04 17:02:36.242: I/dalvikvm(32227):   at retrofit.Utils.streamToBytes(Utils.java:44)
06-04 17:02:36.252: I/dalvikvm(32227):   at retrofit.Utils.readBodyToBytesIfNecessary(Utils.java:81)
06-04 17:02:36.252: I/dalvikvm(32227):   at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:348)
06-04 17:02:36.252: I/dalvikvm(32227):   at retrofit.RestAdapter$RestHandler.invoke(RestAdapter.java:240)
06-04 17:02:36.252: I/dalvikvm(32227):   at $Proxy0.getApkFile(Native Method)
我的代码:

RestAdapter restAdapter = new RestAdapter.Builder()
        .setEndpoint(url).setLogLevel(RestAdapter.LogLevel.HEADERS)
        .build();
        //restAdapter.setLogLevel(RestAdapter.LogLevel.NONE);
        TypedByteArray bytearray=((TypedByteArray)restAdapter.create(ApkDownloadInterface.class).getApkFile().getBody());

        try {
            Log.i("", "length "+bytearray.length());
            BufferedInputStream bis=new BufferedInputStream(bytearray.in());
            BufferedOutputStream bos=new BufferedOutputStream(fos);
            byte array[]=new byte[1024];
            int x=0;
            while((x=bis.read(array))!=-1){
                //Log.i("", "transferring data");
                bos.write(array, 0, x);
            }
            bos.close();
            bis.close();

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }