java - Socket null - Android Tcp socket connection -


i want build sample android app make socket based connection between pc , android application on tcp. code of client.java file that:-

package com.myapp.android.androidsocketclient;  import java.io.bufferedwriter; import java.io.ioexception; import java.io.outputstreamwriter; import java.io.printwriter; import java.net.inetaddress; import java.net.socket; import java.net.unknownhostexception;  import android.app.activity; import android.app.instrumentation; import android.os.bundle; import android.util.log; import android.view.view; import android.widget.edittext;  public class client extends activity {      private socket socket;      private static final int serverport = ****;     private static final string server_ip = "***.**.**.**";      @override     public void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.main);          new thread(new clientthread()).start();      }      public void onclick(view view) {         log.d("button click0", "happening");         requestlogin("userid", "password", "123456");          /*try {             edittext et = (edittext) findviewbyid(r.id.edittext01);             string str = et.gettext().tostring();              printwriter out = new printwriter(new bufferedwriter(                     new outputstreamwriter(socket.getoutputstream())),                     true);             out.println(str);         } catch (unknownhostexception e) {             e.printstacktrace();         } catch (ioexception e) {             e.printstacktrace();         } catch (exception e) {             e.printstacktrace();         }*/     }      class tmessageheader {         public short messagecode;         public int messagelength;         public byte channelid;         public char[] clientid = new char[16];         public int timestamp;         public int errorcode;         public int errormessagelength;         public byte numberofdecimals;         public char source;         public int clientdispatcherid;     }     public tmessageheader getmessageheader(string userid, tloginrequest pstructure) {         log.d("messageheader", "called");         tmessageheader msgheader = new tmessageheader();         msgheader.channelid = 0;//need set on bases of user scrip selection cash ==> 0 , fno not yet decided.         if (!userid.isempty())             msgheader.clientid = userid.tochararray();         msgheader.errorcode = 0;         msgheader.errormessagelength = 0;         msgheader.messagecode = 1;         msgheader.messagelength = 134;         msgheader.numberofdecimals = 0;         msgheader.source = 'a';         msgheader.timestamp = 0;         log.d("returned", string.valueof(msgheader));         return msgheader;     }      class tloginrequest {         tmessageheader messageheader;         char[] userid = new char[20];         char[] password = new char[16];         char[] ipaddress = new char[16];         char[] macaddress = new char[20];         int versionno;         char[] panordob = new char[13];     }       public void requestlogin(string ploginid, string ppassword, string ppandob) {         log.d("requestlogin", "called");         tloginrequest request = new tloginrequest();         request.ipaddress = "ipaddress".tochararray();         request.macaddress = "macaddress".tochararray();         request.panordob = ppandob.trim().tochararray();         request.password = ppassword.trim().tochararray();         request.userid = ploginid.trim().touppercase().tochararray();         request.versionno = integer.parseint("5");         request.userid = "userid".tochararray();         request.messageheader = getmessageheader("userid", request);         request.messageheader.clientid = ploginid.trim().tochararray();         try {             if(socket != null) {                 log.d("socket not", "null");             log.d("outputstream", string.valueof(socket.getoutputstream()));                 outputstreamwriter outwrite = new outputstreamwriter(socket.getoutputstream());                 bufferedwriter buffwrite = new bufferedwriter(outwrite);                  printwriter out = new printwriter(buffwrite, true);                 out.println(request);             }             log.d("socket is", "null");         } catch (ioexception e) {             e.printstacktrace();             log.d("ioexception", "occured");         }     }      class clientthread implements runnable {          @override         public void run() {              try {                 inetaddress serveraddr = inetaddress.getbyname(server_ip);                  socket = new socket(serveraddr, serverport);              } catch (unknownhostexception e1) {                 log.d("unknownhostexception", "true");                 e1.printstacktrace();             } catch (ioexception e1) {                 e1.printstacktrace();                 log.d("ioexception", "true");             }          }      } } 

when run code,in log socket equals null. how can resolve issue? appriciated.

log file :-

    03-17 11:57:46.227: d/androidruntime(293): >>>>>> androidruntime start com.android.internal.os.runtimeinit <<<<<<     03-17 11:57:46.227: d/androidruntime(293): checkjni on     03-17 11:57:46.577: d/androidruntime(293): calling main entry com.android.commands.pm.pm     03-17 11:57:46.597: i/activitymanager(61): start proc com.android.defcontainer service com.android.defcontainer/.defaultcontainerservice: pid=301 uid=10003 gids={1015, 2001}     03-17 11:57:46.798: d/dalvikvm(301): gc_explicit freed 292k, 54% free 2568k/5511k, external 1625k/2137k, paused 41ms     03-17 11:57:46.957: w/activitymanager(61): no content provider found for:      03-17 11:57:47.007: w/activitymanager(61): no content provider found for:      03-17 11:57:47.018: d/packageparser(61): scanning package: /data/app/vmdl-912569523.tmp     03-17 11:57:47.157: i/packagemanager(61): removing non-system package:com.javacodegeeks.android.androidsocketclient     03-17 11:57:47.157: i/activitymanager(61): force stopping package com.javacodegeeks.android.androidsocketclient uid=10041     03-17 11:57:47.168: i/dalvikvm(61): jit: resizing jittable 512 1024     03-17 11:57:47.248: d/packagemanager(61): scanning package com.javacodegeeks.android.androidsocketclient     03-17 11:57:47.248: i/packagemanager(61): package com.javacodegeeks.android.androidsocketclient codepath changed /data/app/com.javacodegeeks.android.androidsocketclient-2.apk /data/app/com.javacodegeeks.android.androidsocketclient-1.apk; retaining data , using new     03-17 11:57:47.248: i/packagemanager(61): unpacking native libraries /data/app/com.javacodegeeks.android.androidsocketclient-1.apk     03-17 11:57:47.258: d/installd(35): dexinv: --- begin '/data/app/com.javacodegeeks.android.androidsocketclient-1.apk' ---     03-17 11:57:47.908: d/dalvikvm(312): dexopt: load 78ms, verify+opt 352ms     03-17 11:57:47.937: d/installd(35): dexinv: --- end '/data/app/com.javacodegeeks.android.androidsocketclient-1.apk' (success) ---     03-17 11:57:47.937: w/packagemanager(61): code path pkg : com.javacodegeeks.android.androidsocketclient changing /data/app/com.javacodegeeks.android.androidsocketclient-2.apk /data/app/com.javacodegeeks.android.androidsocketclient-1.apk     03-17 11:57:47.948: w/packagemanager(61): resource path pkg : com.javacodegeeks.android.androidsocketclient changing /data/app/com.javacodegeeks.android.androidsocketclient-2.apk /data/app/com.javacodegeeks.android.androidsocketclient-1.apk     03-17 11:57:47.948: d/packagemanager(61):   activities: com.javacodegeeks.android.androidsocketclient.client     03-17 11:57:47.958: i/activitymanager(61): force stopping package com.javacodegeeks.android.androidsocketclient uid=10041     03-17 11:57:48.078: i/installd(35): move /data/dalvik-cache/data@app@com.javacodegeeks.android.androidsocketclient-1.apk@classes.dex -> /data/dalvik-cache/data@app@com.javacodegeeks.android.androidsocketclient-1.apk@classes.dex     03-17 11:57:48.078: d/packagemanager(61): new package installed in /data/app/com.javacodegeeks.android.androidsocketclient-1.apk     03-17 11:57:48.186: i/activitymanager(61): force stopping package com.javacodegeeks.android.androidsocketclient uid=10041     03-17 11:57:48.238: d/dalvikvm(130): gc_explicit freed 15k, 51% free 2906k/5895k, external 4767k/5643k, paused 49ms     03-17 11:57:48.318: i/activitymanager(61): start proc com.svox.pico broadcast com.svox.pico/.voicedatainstallerreceiver: pid=313 uid=10009 gids={}     03-17 11:57:48.338: w/recognitionmanagerservice(61): no available voice recognition services found     03-17 11:57:48.528: i/activitythread(313): pub com.svox.pico.providers.settingsprovider: com.svox.pico.providers.settingsprovider     03-17 11:57:48.588: d/dalvikvm(170): gc_explicit freed 294k, 52% free 2771k/5703k, external 1625k/2137k, paused 342ms     03-17 11:57:48.658: d/dalvikvm(61): gc_explicit freed 1092k, 47% free 4277k/8007k, external 4373k/5573k, paused 75ms     03-17 11:57:48.738: i/installd(35): unlink /data/dalvik-cache/data@app@com.javacodegeeks.android.androidsocketclient-2.apk@classes.dex     03-17 11:57:48.748: d/androidruntime(293): shutting down vm     03-17 11:57:48.758: d/dalvikvm(293): gc_concurrent freed 102k, 72% free 295k/1024k, external 0k/0k, paused 0ms+1ms     03-17 11:57:48.758: d/jdwp(293): got wake-up signal, bailing out of select     03-17 11:57:48.758: d/dalvikvm(293): debugger has detached; object registry had 1 entries     03-17 11:57:49.088: d/androidruntime(326): >>>>>> androidruntime start com.android.internal.os.runtimeinit <<<<<<     03-17 11:57:49.088: d/androidruntime(326): checkjni on     03-17 11:57:49.438: d/androidruntime(326): calling main entry com.android.commands.am.am     03-17 11:57:49.448: i/activitymanager(61): starting: intent { act=android.intent.action.main cat=[android.intent.category.launcher] flg=0x10000000 cmp=com.javacodegeeks.android.androidsocketclient/.client } pid 326     03-17 11:57:49.468: i/activitymanager(61): start proc com.javacodegeeks.android.androidsocketclient activity com.javacodegeeks.android.androidsocketclient/.client: pid=334 uid=10041 gids={3003}     03-17 11:57:49.488: d/androidruntime(326): shutting down vm     03-17 11:57:49.498: d/dalvikvm(326): gc_concurrent freed 103k, 69% free 319k/1024k, external 0k/0k, paused 1ms+1ms     03-17 11:57:49.498: d/dalvikvm(326): debugger has detached; object registry had 1 entries     03-17 11:57:50.178: i/armassembler(61): generated scanline__00000177:03515104_00001002_00000000 [ 87 ipp] (110 ins) @ [0x44c766f0:0x44c768a8] in 366685 ns     03-17 11:57:50.468: i/activitymanager(61): displayed com.javacodegeeks.android.androidsocketclient/.client: +1s9ms     03-17 11:57:55.568: d/dalvikvm(130): gc_explicit freed 128k, 51% free 2890k/5895k, external 4816k/5643k, paused 55ms     03-17 11:57:55.808: d/button click0(334): happening     03-17 11:57:55.808: d/requestlogin(334): called     03-17 11:57:55.808: d/messageheader(334): called     03-17 11:57:55.808: d/returned(334): com.javacodegeeks.android.androidsocketclient.client$tmessageheader@405345f8     03-17 11:57:55.808: d/socket not(334): null     03-17 11:57:55.818: d/outputstream(334): org.apache.harmony.luni.net.socketoutputstream@40534ac8     03-17 11:57:55.818: d/socket is(334): null 03-17 12:01:49.917: d/sntpclient(61): request time failed: java.net.socketexception: address family not supported protocol 

you socket is(334): null because you're printing unconditionally. you're missing else.


Comments

Popular posts from this blog

node.js - Mongoose: Cast to ObjectId failed for value on newly created object after setting the value -

[C++][SFML 2.2] Strange Performance Issues - Moving Mouse Lowers CPU Usage -

ios - Possible to get UIButton sizeThatFits to work? -