中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Android 工具類(lèi)

2018-07-20    來(lái)源:open-open

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用
目前工具類(lèi)中的方法有: 獲取屏幕寬度高度密度 獲取MAC地址 獲取當(dāng)前時(shí)間 日期格式轉(zhuǎn)換 獲取當(dāng)前版本名,版本號(hào) 網(wǎng)絡(luò)檢測(cè).
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
 
import android.app.Activity;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.text.TextUtils;
import android.util.DisplayMetrics;
 
 
public class MyUtils {
     
    /**
     * 獲取屏幕寬度高度密度
     * 
     *  如果屏幕密度低,需要在工程的AndroidManifest.xml文件中,加入supports-screens節(jié)點(diǎn) 
     * <supports-screens
        android:smallScreens="true"
        android:normalScreens="true"
        android:largeScreens="true"
        android:resizeable="true"
        android:anyDensity="true"/>
     * @param activity 屏幕界面
     * @param type     類(lèi)型1:寬度,2:高度,3:密度,4dpi密度
     * @return 屏幕寬度或高度或密度
     */
    public Object getWindowSize(Activity activity,int type){
        DisplayMetrics metric = new DisplayMetrics();
        activity.getWindowManager().getDefaultDisplay().getMetrics(metric);
        if (type == 1) {
            int width = metric.widthPixels;  // 屏幕寬度(像素)
            return width;
        }else if (type == 2) {
            int height = metric.heightPixels;  // 屏幕高度(像素)
            return height;
        }else if (type == 3) {
            float density = metric.density;  // 屏幕密度(0.75 / 1.0 / 1.5)
            return density;
        }else if (type == 4) {
            int densityDpi = metric.densityDpi;  // 屏幕密度DPI(120 / 160 / 240)
            return densityDpi;
        }
        return 0;
    }
     
    /**
     * 獲取MAC地址    
     * @param context 上下文
     * @param replaceSymbol 替換字符,默認(rèn)替換字符為""
     * @return 返回MAC地址     錯(cuò)誤返回12個(gè)0
     */
    public String getMacAddress(Context context,String replaceSymbol) {
        String macAddress = "000000000000";
        if (replaceSymbol == null) {
            replaceSymbol = "";
        }
        try {
            WifiManager wifiMgr = (WifiManager) context
                    .getSystemService(Context.WIFI_SERVICE);
            WifiInfo info = (null == wifiMgr ? null : wifiMgr
                    .getConnectionInfo());
            if (null != info) {
                if (!TextUtils.isEmpty(info.getMacAddress()))
                    macAddress = info.getMacAddress().replace(":", replaceSymbol);
                else
                    return macAddress;
            }
        } catch (Exception e) {
            e.printStackTrace();
            return macAddress;
        }
        return macAddress;
    }
     
    /**
     *  獲取當(dāng)前時(shí)間
     * @param type 日期時(shí)間格式
     * @param locale 地區(qū)默認(rèn)為 Locale.CHINA
     * @return 按照格式返回當(dāng)前時(shí)間
     */
    public String getCurrentTime(String type,Locale locale) {
        if (locale == null) {
            locale = Locale.CHINA;
        }
        Date curDate = new Date(System.currentTimeMillis());
        SimpleDateFormat sdf = new SimpleDateFormat(type,locale);
        return sdf.format(curDate);
    }
     
    /**
     * 日期格式轉(zhuǎn)換
     * 
     * @param date 待轉(zhuǎn)換日期
     * @param type 格式
     * @param locale 地區(qū) 默認(rèn)為 Locale.CHINA
     * @return 日期
     */
    public String formatDate(String date, String type,Locale locale) {
        String fmDate = "";
        if (date != null) {
            if (locale == null) {
                locale = Locale.CHINA;
            }
            SimpleDateFormat sdf = new SimpleDateFormat(type,locale);
            fmDate = sdf.format(new Date(Long.parseLong(date)));
        }
        return fmDate;
    }
     
    /**
     * 獲取當(dāng)前版本名,版本號(hào)
     * @param context 上下文
     * @param type 1:版本名稱(chēng),2:版本號(hào)
     * @return 版本名或版本號(hào)
     */
    public Object getCurrentVersionName(Context context,int type){
        PackageManager manager = context.getPackageManager();
        String packageName = context.getPackageName();
        String versionName = null;
        int versionCode = 0;
        try {
            PackageInfo info = manager.getPackageInfo(packageName, 0);
            if (type == 1) {
                versionName = info.versionName;
                return versionName;
            }else if (type == 2) {
                versionCode = info.versionCode;
                return versionCode;
            }
             
        } catch (NameNotFoundException e) {
            e.printStackTrace();
            return null;
        }
        return null;
    }
     
    /**
     * 網(wǎng)絡(luò)檢測(cè) 
     * @param context 上下文
     * @return false:無(wú)網(wǎng)絡(luò),true:有網(wǎng)絡(luò)
     */
    public boolean isOnline(Context context) {
        boolean isOnline = false;
        final ConnectivityManager cm = (ConnectivityManager) context
                .getSystemService(Context.CONNECTIVITY_SERVICE);
        final NetworkInfo networkInfo = cm.getActiveNetworkInfo();
        if (networkInfo != null) {
            isOnline = networkInfo.isAvailable();
        }
        // String netType = "當(dāng)前網(wǎng)絡(luò)類(lèi)型為:" + networkInfo.getTypeName();
        return isOnline;
    }
 
}



標(biāo)簽: isp 網(wǎng)絡(luò)

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:objective-c產(chǎn)生隨機(jī)數(shù)的方法

下一篇:iOS相應(yīng)觸屏事件代碼