Android快速开发框架LoonAndroid (转)

时间:2023-03-09 22:37:20
Android快速开发框架LoonAndroid (转)

1、源码简介:

主要有以下模块:

(1) 自动注入框架(只需要继承框架内的application既可)

(2) 图片加载框架(多重缓存,自动回收,最大限度保证内存的安全性)

(3) 网络请求模块(继承了基本上现在所有的http请求)

(4) eventbus(集成一个开源的框架)

(5) 验证框架(集成开源框架)

(6) json解析(支持解析成集合或者对象)

(7) 数据库(不知道是哪位写的 忘记了)

(8) 多线程断点下载(自动判断是否支持多线程,判断是否是重定向)

(9) 自动更新模块

(10) 一系列工具类

2、代码片段

  1. <span style="font-size:18px;">
  2. public class Handler_Network {
  3. /**
  4. * 检测手机是否开启GPRS网络,需要调用ConnectivityManager,TelephonyManager 服务.
  5. *
  6. * @param context
  7. * @return boolean
  8. */
  9. public static boolean checkGprsNetwork(Context context) {
  10. boolean has = false;
  11. ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
  12. TelephonyManager mTelephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
  13. NetworkInfo info = connectivity.getActiveNetworkInfo();
  14. int netType = info.getType();
  15. int netSubtype = info.getSubtype();
  16. if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS && !mTelephony.isNetworkRoaming()) {
  17. has = info.isConnected();
  18. }
  19. return has;
  20. }
  21. /**
  22. * 检测手机是否开启WIFI网络,需要调用ConnectivityManager服务.
  23. *
  24. * @param context
  25. * @return boolean
  26. */
  27. public static boolean checkWifiNetwork(Context context) {
  28. boolean has = false;
  29. ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
  30. NetworkInfo info = connectivity.getActiveNetworkInfo();
  31. int netType = info.getType();
  32. int netSubtype = info.getSubtype();
  33. if (netType == ConnectivityManager.TYPE_WIFI) {
  34. has = info.isConnected();
  35. }
  36. return has;
  37. }
  38. /**
  39. * 检测当前手机是否联网
  40. *
  41. * @param context
  42. * @return boolean
  43. */
  44. public static boolean isNetworkAvailable(Context context) {
  45. ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
  46. if (connectivity == null) {
  47. return false;
  48. } else {
  49. NetworkInfo[] info = connectivity.getAllNetworkInfo();
  50. if (info != null) {
  51. for (int i = 0; i < info.length; i++) {
  52. if (info[i].getState() == NetworkInfo.State.CONNECTED) {
  53. return true;
  54. }
  55. }
  56. }
  57. }
  58. return false;
  59. }
  60. /**
  61. * 手机是否处在漫游
  62. *
  63. * @param mCm
  64. * @return boolean
  65. */
  66. public boolean isNetworkRoaming(Context mCm) {
  67. ConnectivityManager connectivity = (ConnectivityManager) mCm.getSystemService(Context.CONNECTIVITY_SERVICE);
  68. if (connectivity == null) {
  69. return false;
  70. }
  71. NetworkInfo info = connectivity.getActiveNetworkInfo();
  72. boolean isMobile = (info != null && info.getType() == ConnectivityManager.TYPE_MOBILE);
  73. TelephonyManager mTm = (TelephonyManager) mCm.getSystemService(Context.TELEPHONY_SERVICE);
  74. boolean isRoaming = isMobile && mTm.isNetworkRoaming();
  75. return isRoaming;
  76. }
  77. }</span>

3、下载

http://pan.baidu.com/s/1i3oqaR7

From:  http://www.devstoreZ.cn/code/info/74.html(这里博客园被禁用) 我就加了个Z ,去掉Z就是网址了)