Saturday, 30 June 2012

Go homeActivity with FLAG_ACTIVITY_CLEAR_TOP in android

It sets the FLAG_ACTIVITY_CLEAR_TOP flag on the Intent along with the HomeActivity.  This flag  launches a new instance of the activity if it isn’t currently running, and closes all the activities on top of it.

public static void goHome( Context ctx )
{
    if ( ! ( ctx instanceof HomeActivity ) )
    {
        Intent intent = new Intent( ctx, HomeActivity.class );
        intent.setFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP );
        ctx.startActivity( intent );
    }
}

Get DeviceType, Android API Level , OS Version and Application Version in Android

int osv=Build.VERSION.SDK_INT;
   String osv2=Build.VERSION.RELEASE;

 DisplayMetrics dm = new DisplayMetrics();
         getWindowManager().getDefaultDisplay().getMetrics(dm);
       
         if(dm.widthPixels<600)
             {
                DeviceType="Android SmartPhone";
             }
         else
             {
                 DeviceType="Android Tablet";
             }
       
       
         String model2=android.os.Build.BRAND;       
         System.out.println("BRAND is "+model2+" "+DeviceType);
         String brandname = model2.substring(0,1).toUpperCase() + model2.substring(1);
         DeviceType=brandname+" "+DeviceType;
         try
             {
                 app_ver =Integer.toString( this.getPackageManager().getPackageInfo(this.getPackageName(), 0).versionCode);
             }
         catch (NameNotFoundException e1)
            {
                 e1.printStackTrace();
            }
       
       androidinfo.setText(" DeviceType:  "+ DeviceType+"  \n "+"Android:  API Level "+osv+"  OS Version "+osv2+"\n Application Version:  "+app_ver);
        

Get Current time zone TimeZone.getDefault() Android

TextView textTimeZone = (TextView)findViewById(R.id.timezone);

        

        TimeZone timezone = TimeZone.getDefault();

        String TimeZoneName = timezone.getDisplayName();

  int TimeZoneOffset = timezone.getRawOffset()/(60 * 60 * 1000);

  
textTimeZone.setText("My Time Zone\n" + 
    TimeZoneName + " : " +String.valueOf(TimeZoneOffset));

Update UI using RunOnUiThread in Android

package com.umer.runOnUiThreadExmp;
 

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
 
public class RunOnUiThreadExample extends Activity {
    /** Called when the activity is first created. */
 TextView txtview;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        txtview=(TextView)findViewById(R.id.txtview);
        myThread();
    }
    public void myThread(){
     Thread th=new Thread(){
       
      @Override
      public void run(){
       try
       {
        while(true)
        {
        Thread.sleep(100);
 
 
           RunOnUiThreadExample.this.runOnUiThread(new Runnable() {
             
         @Override
         public void run() {
          // TODO Auto-generated method stub
         // do ur UI work
          txtview.setText("my name is umer and i am android developer");
         }
        });
        }
       }catch (InterruptedException e) {
     // TODO: handle exception
    }
      }
     };
     th.start();
    }
}

Sort listview by title Android






Collections.sort(mylistArray, new Comparator<Object>(){
             public int compare(Object o1, Object o2) {
                 HashMap<?, ?> map1=(HashMap<?, ?>)o1;
                 HashMap<?, ?> map2=(HashMap<?, ?>)o2;
                 String s1=(String)map1.get("title");
                 String s2=(String)map2.get("title");
                 return s1.compareToIgnoreCase(s2);
             }
         });
mylistArray have sorted by title. now use sorted array in ur ListView adapter.

Wednesday, 6 June 2012

Checking for the presence of an Internet connection on an Android device


final boolean isInternetOn() {CONNECTIVITY_SERVICE);// ARE WE CONNECTED TO THE NET
connec.getNetworkInfo(0).getState() == NetworkInfo.State.
connec.getNetworkInfo(1).getState() == NetworkInfo.State.
connec.getNetworkInfo(1).getState() == NetworkInfo.State.
if ( connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED ||CONNECTING ||CONNECTING ||CONNECTED ) {// MESSAGE TO SCREEN FOR TESTING (IF REQ)
//Toast.makeText(this, connectionType + ” connected”, Toast.LENGTH_SHORT).show();
}
return true;else if ( connec.getNetworkInfo(0).getState() == NetworkInfo.State.DISCONNECTED || connec.getNetworkInfo(1).getState() == NetworkInfo.State.DISCONNECTED ) {//System.out.println(“Not Connected”);
return
false ;

}
return
false;
}
ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.

Upload a Image in server in Android by JSON webservices

package com.wishingWell.JSONFuntions;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import org.json.JSONException;
import org.json.JSONObject;
import android.util.Log;
public class JSONfunctionImage {

 private static final String TAG = "UPLOADER";
   private static String Tag = "UPLOADER";
     private static  String urlString="........";
     static HttpURLConnection conn;

    
    
    
    
 public static JSONObject getJSONImage(String filepath){
    String lineEnd = "\r\n";
         String twoHyphens = "--";
         String boundary = "-------------------------acebdf13572468";
         String line=null;
         StringBuilder sb = new StringBuilder();
         JSONObject res=null;
         try {
     
             // ------------------ CLIENT REQUEST
       
             FileInputStream fileInputStream = new FileInputStream(new File(
               filepath));
            
             // open a URL connection to the Servlet
             URL url = new URL(urlString);
             // Open a HTTP connection to the URL
          
             conn = (HttpURLConnection) url.openConnection();
             // Allow Inputs
             conn.setDoInput(true);
             // Allow Outputs
             conn.setDoOutput(true);
             // Don't use a cached copy.
             conn.setUseCaches(false);
             // Use a post method.
             conn.setRequestMethod("POST");
          //conn.setRequestProperty("Connection", "Keep-Alive");
       conn.setRequestProperty("Content-Type", "multipart/form-data; boundary="+boundary);
       
             DataOutputStream dos = new DataOutputStream(conn.getOutputStream());
             dos.writeBytes(lineEnd + twoHyphens + boundary + lineEnd); //" + pathToOurFile +"
             dos.writeBytes("Content-Disposition: form-data; name=\"userimage\";filename=\".png\"" + lineEnd);
             dos.writeBytes("Content-Type: image/png" + lineEnd + lineEnd);
        
 
             Log.e(Tag, "Headers are written");
             // create a buffer of maximum size
             int bytesAvailable = fileInputStream.available();
             int maxBufferSize = 10000;
             // int bufferSize = Math.min(bytesAvailable, maxBufferSize);
             byte[] buffer = new byte[bytesAvailable];
             // read file and write it into form...
             int bytesRead = fileInputStream.read(buffer, 0, bytesAvailable);
            while (bytesRead > 0) {
                 dos.write(buffer, 0, bytesAvailable);
                 bytesAvailable = fileInputStream.available();
                 bytesAvailable = Math.min(bytesAvailable, maxBufferSize);
                 bytesRead = fileInputStream.read(buffer, 0, bytesAvailable);
             }
             // send multipart form data necesssary after file data...
             dos.writeBytes(lineEnd);
       dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
       
             // close streams
             Log.e(Tag, "File is written");
             fileInputStream.close();
             dos.flush();
             dos.close();
            
         } catch (MalformedURLException ex) {
             Log.e(Tag, "error: " + ex.getMessage(), ex);
         }
         catch (IOException ioe) {
             Log.e(Tag, "error: " + ioe.getMessage(), ioe);
         }
         try {
             BufferedReader rd = new BufferedReader(new InputStreamReader(conn
                     .getInputStream()));
            
            
            
            
          try {
              while ((line = rd.readLine()) != null) {
                  sb.append(line + "\n");
              }
             
          } catch (IOException e) {
              e.printStackTrace();
       
          }
         
          
             rd.close();
         
         } catch (IOException ioex) {
             Log.e("MediaPlayer", "error: " + ioex.getMessage(), ioex);
            
         }
        
        
      //   System.out.println(" returnr sb ::"+  sb.toString());
        
         try{
     
           res = new JSONObject(sb.toString());           
       }catch(JSONException e){
               Log.e("log_tag", "Error parsing data "+e.toString());
       }
        
         return res;
        
        
  }
 
 
 
 
 
 







}