android sdk log,Android sdk开发(二) Log日志类的设计

# Log类的设计

正式代码设计之前我们先考虑一下日志类的使用。

日志主要用在调试app 一些复杂的业务流程,借助log 可以很容易找到问题所在

因为android.util.Log 定义为final类(不可继承) 所以我采用组合的方式才重写一个可以控制开关的日志工具类。考虑到Log应用的广泛性,所以定义为static,生命周期为全局

~~~

public class Log {

/**

* 日志的开关, false 表示不打印日志

*/

private static boolean open = false;

public static boolean isOpen() {

return open;

}

public static void setOpen(boolean open) {

Log.open = open;

}

~~~

Log的开关控制,一般在app初始化的地方设置。后续再讨论

~~~

public static void d(String tag, String msg){

if(open == false){

return; // 不打印日志

}

android.util.Log.d(tag,msg);

}

~~~

其中tag和msg 考虑到传入的参数需要频繁转型

比如说像打印一个int型的变量值。这时候会很不方便。同理其他非String类型的都需要转化为String 。

因为优化一下当前方法

~~~

public static voidd(Object tag, Object msg){

if(open == false){

return; // 不打印日志

}

android.util.Log.d(String.valueOf(tag), String.valueOf(msg));

}

~~~

这时候如果传入的 tag == null 或者“” 或者 包含有” ” \n\r等字符 ,那么输出的结果可能不是我们想要的,

接着继续优化一下该方法

~~~

package phoebe.frame.util;

/**

* 日志打印

*

* @author coffee

*

* 2015-12-16 下午9:39:41

*/

public class Log {

/**

* 日志的开关, false 表示不打印日志

*/

private static boolean open = false;

public static boolean isOpen() {

return open;

}

public static void setOpen(boolean open) {

Log.open = open;

}

public static void d(Object tag, Object msg) {

if (open == false) {

return;

}

tag = handleMsgOrTag(tag);

msg = handleMsgOrTag(msg);

android.util.Log.d(String.valueOf(tag), String.valueOf(msg));

}

private static Object handleMsgOrTag(Object msgOrTag) {

if (msgOrTag == null) {

msgOrTag = "[null]";

} else if (msgOrTag.toString().trim().length() == 0) {

msgOrTag = "[\"\"]";

} else {

msgOrTag = msgOrTag.toString().trim();

}

return msgOrTag;

}

}

~~~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当安装Android Studio后,系统会自动检测Android SDK,如果没有安装会自动推荐安装。然而,有时候会遇到安装失败的情况。安装失败可能有多种原因,以下是一些常见的问题和解决方法: 1. SSL证书认证不通过:当打开Android SDK Manager时,可能会在Android SDK Manager Log中看到SSL证书认证不通过的提示。这可能是由于网络连接问题或者防火墙的设置导致的。解决方法包括: - 检查网络连接,确保网络畅通。 - 确保没有被防火墙阻止访问Android SDK服务器。 - 尝试使用代理服务器进行连接。 2. 连接服务器失败:在尝试重新加载Android SDK Manager时,可能会在Android SDK Manager Log中看到连接服务器失败的提示,特别是连接http://dl.google.com服务器失败。这可能是由于网络连接问题或者服务器故障导致的。解决方法包括: - 检查网络连接,确保网络畅通。 - 确保没有被防火墙阻止访问Android SDK服务器。 - 尝试使用代理服务器进行连接。 - 等待一段时间后重试,可能是服务器暂时不可用。 通过以上方法,您可以尝试解决Android SDK下载安装失败的问题。如果问题仍然存在,您可以查看Android开发者社区或咨询相关技术支持获取更多帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [解决无法下载安装Android SDK的问题](https://blog.csdn.net/fly_xiaocaibi88/article/details/124406852)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值