Friday, November 23, 2012

Thursday, November 22, 2012

How to get device MAC ID in ANDROID

--------------------------------------------------------------------------
Using WifiManager get wifi mac id in android.
--------------------------------------------------------------------------

wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
macaddress = wifiManager.getConnectionInfo().getMacAddress();
Log.i("MACID in loading...", "" + macaddress);

---------------------------------------------------------------------


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Using java.Utils package we can get MAC ID of device...

This is a code available in an Utils pkg.
We can add only this following class in our project...

---------------------------------------------------------------------

import java.io.*;
import java.net.*;
import java.util.*;
import org.apache.http.conn.util.InetAddressUtils;

public class RanjitUtils {

 /**
* Returns MAC address of the given interface name.
*
* @param interfaceName
*            eth0, wlan0 or NULL=use first interface
* @return mac address or empty string
*/
public static String getMACAddress(String interfaceName) {
try {
List<NetworkInterface> interfaces = Collections
.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface intf : interfaces) {
if (interfaceName != null) {
if (!intf.getName().equalsIgnoreCase(interfaceName))
continue;
}
byte[] mac = intf.getHardwareAddress();
if (mac == null)
return "";
StringBuilder buf = new StringBuilder();
for (int idx = 0; idx < mac.length; idx++)
buf.append(String.format("%02X:", mac[idx]));
if (buf.length() > 0)
buf.deleteCharAt(buf.length() - 1);
return buf.toString();
}
} catch (Exception ex) {
} // for now eat exceptions
return "";
/*
* try { // this is so Linux hack return
* loadFileAsString("/sys/class/net/" +interfaceName +
* "/address").toUpperCase().trim(); } catch (IOException ex) { return
* null; }
*/
}
}
----------------------------------------------
access getMACADDRES(String) static method
----------------------------------------------
String macid_eth = RanjitUtils.getMACAddress("eth0");
or
String macid_wlan = RanjitUtils.getMACAddress("wlan0");

Wednesday, November 21, 2012

How to find distance in km between two lat long in ANDROID


package ranjit.static_var_fun;

public class RanjitStaticDataNFun {

public static float distFrom(float lat1, float lng1, float lat2, float lng2) {
                 // This is earth radius
double earthRadius = 3958.75;

double dLat = Math.toRadians(lat2 - lat1);
double dLng = Math.toRadians(lng2 - lng1);
double a = Math.sin(dLat / 2) * Math.sin(dLat / 2)
+ Math.cos(Math.toRadians(lat1))
* Math.cos(Math.toRadians(lat2)) * Math.sin(dLng / 2)
* Math.sin(dLng / 2);
double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double dist = earthRadius * c;

int meterConversion = 1609;
float dist_in_km = (new Float(dist * meterConversion).floatValue()) / 1000;
                //distance in an KM
return dist_in_km;
}

}

Sunday, November 18, 2012

How to get correct position of list item when custom list button clicked


use setTag attribute of the View..............

use this button code in getView() method
Button call = (Button) rowView.findViewById(R.id.button1);
call.setTag(position);

and after that directly use onClick listner for that listview item button
call.setOnClickListener(new OnClickListener() {

      @Override
      public void onClick(View v) {
         int which = -1;
         Obejct obj =  v.getTag();
         if(obj instaceof Integer){
         which  = ((Integer)obj).intValue();
         }

      if(which >-1){
      //write code here to get value from any way using position means which
      Toast.makeText(getContext(), "Current clicked position is : "+which, 1).show();
   }
 }
});

Reference from: http://stackoverflow.com/questions/11156078/android-get-the-listview-item-from-button-clicked-in-custom-listview