編輯:關於Android編程
本文地址: http://blog.csdn.net/caroline_wendy
定位服務(Location Service),可以確定移動設備的地址,在地圖相關服務中,經常會使用GPS和移動相關的兩種定位服務,GPS較為精准。
根據常用的定位服務功能,又添加網絡檢測和Wifi檢測,和啟動系統設置界面進行測試的功能。
代碼:
import android.content.Context; import android.content.Intent; import android.location.LocationManager; import android.net.ConnectivityManager; import android.net.NetworkInfo; import android.net.wifi.WifiManager; import android.provider.Settings; /** * Created by wangchenlong on 14-11-17. * * 定位服務的庫: * 包含功能:判斷是否啟動 定位服務、網絡連接、WIFI連接 * 頁面跳轉-> 定位服務設置界面,WIFI設置界面 */ public class LocationServiceUtils { private static final String TAG = "LocationServiceUtils"; /** * 判斷是否啟動定位服務 * * @param context 全局信息接口 * @return 是否啟動定位服務 */ public static boolean isOpenLocService(final Context context) { boolean isGps = false; //判斷GPS定位是否啟動 boolean isNetwork = false; //判斷網絡定位是否啟動 if (context != null) { LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); if (locationManager != null) { //通過GPS衛星定位,定位級別可以精確到街(通過24顆衛星定位,在室外和空曠的地方定位准確、速度快) isGps = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER); //通過WLAN或移動網絡(3G/2G)確定的位置(也稱作AGPS,輔助GPS定位。主要用於在室內或遮蓋物(建築群或茂密的深林等)密集的地方定位) isNetwork = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER); } if (isGps || isNetwork) { return true; } } return false; } /** * 判斷是否啟動全部網絡連接,包括WIFI和流量 * * @param context 全局信息接口 * @return 是否連接到網絡 */ public static boolean isNetworkConnected(Context context) { if (context != null) { ConnectivityManager mConnectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo(); if (mNetworkInfo != null) { return mNetworkInfo.isAvailable(); } } return false; } /** * 判斷是否啟動WIFI連接 * * @param context 全局信息接口 * @return 是否連接到WIFI */ public static boolean isWifiConnected(Context context) { if (context != null) { WifiManager wifi = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); if (wifi != null) { return wifi.isWifiEnabled(); } } return false; } /** * 跳轉定位服務界面 * * @param context 全局信息接口 */ public static void gotoLocServiceSettings(Context context) { final Intent intent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } /** * 跳轉WIFI服務界面 * * @param context 全局信息接口 */ public static void gotoWifiServiceSettings(Context context) { final Intent intent = new Intent(Settings.ACTION_WIFI_SETTINGS); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } }
工具類的靜態方法可以直接使用。
背景這篇遲遲難產的文章算是對2015前半年的一個交代吧,那時候有一哥們要求來一發Android Canvas相關總結,這哥們還打賞了,實在不好意思,可是這事一放就給放忘了
本文實例講述了Android activity的生命周期。分享給大家供大家參考,具體如下:activity類處於android.app包中,繼承體系如下:1.Java.l
前面我寫了兩篇文章說明了zc301的實現 具體請看 http://blog.csdn.net/hclydao/article/details/21235919 下面順
大家都知道在Android中通過AIDL可以跨進程調用Service中的數據,網上也有很多實例,但是大部分實例都是關於基本數據類型的遠程調用,很少講到復雜數據的調用,今天