11package oly .netpowerctrl ;
22
33import java .io .IOException ;
4- import java .io .UnsupportedEncodingException ;
54import java .net .DatagramPacket ;
65import java .net .DatagramSocket ;
76
87import android .content .Context ;
98import android .content .Intent ;
9+ import android .os .Handler ;
1010import android .support .v4 .content .LocalBroadcastManager ;
1111import android .widget .Toast ;
1212
@@ -45,7 +45,7 @@ public void run() {
4545 String msg = String .format (ctx .getResources ().getString (R .string .error_listen_thread_exception ), recv_port );
4646 msg += e .getLocalizedMessage ();
4747 if (recv_port < 1024 ) msg += ctx .getResources ().getString (R .string .error_port_lt_1024 );
48- Toast . makeText ( ctx , msg , Toast . LENGTH_LONG ). show ( );
48+ ShowToast ( msg );
4949 }
5050 break ;
5151 }
@@ -74,7 +74,7 @@ public void parsePacket(final String message, int recevied_port) {
7474 desc = ctx .getResources ().getString (R .string .error_nopass );
7575 else desc = msg [2 ];
7676 String error = ctx .getResources ().getString (R .string .error_packet_received ) + desc ;
77- Toast . makeText ( ctx , error , Toast . LENGTH_LONG ). show ( );
77+ ShowToast ( error );
7878 return ;
7979 }
8080
@@ -101,4 +101,14 @@ public void parsePacket(final String message, int recevied_port) {
101101 it .putExtra ("device_info" , di );
102102 LocalBroadcastManager .getInstance (ctx ).sendBroadcast (it );
103103 }
104+
105+ public void ShowToast (final String message ) {
106+ Handler h = new Handler (ctx .getMainLooper ());
107+
108+ h .post (new Runnable () {
109+ public void run () {
110+ Toast .makeText (ctx ,message ,Toast .LENGTH_LONG ).show ();
111+ }
112+ });
113+ }
104114}
0 commit comments