2013-04-30 43 views
-1
public class WiFiLibrary { 
public Socket client = null; 
public FileInputStream fileInputStream = null; 
public BufferedInputStream bufferedInputStream = null; 
public OutputStream outputStream = null; 

public void Connect() 
{ 
    try 
    {  
     client = new Socket("169.254.84.140",9999); 
    } 
    catch (IOException e) 
    { 
     e.printStackTrace(); 
    } 
} 
public void SendFile() 
{ 
    try 
    { 
     File file = new File("/sdcard/TEST/TEST.xml"); 

     byte[] mybytearray = new byte[(int) file.length()]; 
     fileInputStream = new FileInputStream(file); 
     bufferedInputStream = new BufferedInputStream(fileInputStream); 

     /**reads the file */ 
     bufferedInputStream.read(mybytearray, 0, mybytearray.length); 
     outputStream = client.getOutputStream(); 

     /** writes file to the output stream byte by byte */ 
     outputStream.write(mybytearray, 0, mybytearray.length); 
     outputStream.flush(); 
     bufferedInputStream.close(); 
     outputStream.close(); 

    } 
    catch(IOException e) 
    { 
     e.printStackTrace(); 
    } 

} 
public void Disconnect() 
{ 
    try 
    { 
     client.close(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 

这是我的Android客户端类代码。但是当我说连接它崩溃并关闭。我添加了我的Manifest权限(清单上没有问题)。过去我使用不同的平板电脑使用了部分代码。但我试用了Nexus 7,它刚刚坠毁。Nexus 7 Android文件传输(Android中的套接字编程)

这里是我的清单权限也:

android:minSdkVersion="16" 
android:targetSdkVersion="17" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 
    <uses-permission android:name="android.permission.INTERNET"/> 
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> 

任何人都可以一个想法是什么是关于我的Nexus 7的问题?我也开发nexus 7作为开发者,但没有任何改变。同样,它坠毁。

+0

“崩溃并关闭” - >张贴相关的logcat部分,并指向它所指的行。 – 2013-04-30 11:16:30

回答