android 通过wifi 获取经纬度和获取渠道号/屏幕宽高

来源:互联网 发布:新店淘宝客推广 编辑:程序博客网 时间:2024/06/03 18:41



1.通过wifi获取经纬度。

/**
  * 通过wifi获取经纬度
  *
  * @return 经度,纬度
  */
 private String getLocationInfo() {

  LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

  Location location = locationManager

  .getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

  return location.getLatitude() + "," + location.getLongitude();

 }

别忘了在配置文件当中加入权限

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

2  判断是否联网

/**
  * 判断是否有网络
  *
  * @return ture 为有网false为无网;
  */
 private boolean isNetwork() {
  ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
  boolean bool = false;
  NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
  if (networkInfo == null || !networkInfo.isAvailable()) {
   // 当前有可用网络
   bool = false;
  } else {
   bool = true;
   // 当前无可用网络
  }
  return bool;

 }



3 获取产品的渠道号

/**
  * 获取产品渠道号
  * @return String渠道号
  */
 private String getQuDao() {

  ApplicationInfo info;
  String qudao = "";
  try {
   info = this.getPackageManager().getApplicationInfo(
     this.getPackageName(), PackageManager.GET_META_DATA);
   qudao = info.metaData.getString("PACKNAME");
  } catch (Exception e1) {
   // TODO Auto-generated catch block
   e1.printStackTrace();
  }
  return qudao;
 }

需要现在配置文件中定义一个

 <meta-data
            android:name="PACKNAME"
            android:value="{@market@}" />




4:android获取屏幕的高度和宽度用到WindowManager这个类,两种方法:
 
1、WindowManager wm = (WindowManager) getContext()
                    .getSystemService(Context.WINDOW_SERVICE);
 
     int width = wm.getDefaultDisplay().getWidth();
     int height = wm.getDefaultDisplay().getHeight();
 
2、WindowManager wm = this.getWindowManager();
 
     int width = wm.getDefaultDisplay().getWidth();
     int height = wm.getDefaultDisplay().getHeight();


0 0
原创粉丝点击