android 的几个黄色警告解决办法
16lz
2021-01-23
转自:http://my.eoe.cn/864234/archive/5162.html
1:Handler
12345678 | // This Handler class should be static or leaks might occur: IncomingHandler @SuppressLint("HandlerLeak") private Handler mHandler = new Handler() { @Override public void handleMessage(Message msg) { }; }; |
解决方法:
123456 | private Handler mHandler = new Handler(new Handler.Callback() { @Override public boolean handleMessage(Message msg) { return false; } }); |
警告原因:
2:SimpleDateFormat
123456 | // To get local formatting use getDateInstance(), getDateTimeInstance(), or // getTimeInstance(), or use new SimpleDateFormat(String template, Locale // locale) with for example Locale.US for ASCII dates. @SuppressLint("SimpleDateFormat") SimpleDateFormat simpleDateFormat = new SimpleDateFormat( "yyyy-MM-ddHH:mm:ss"); |
解决方法:
12 | SimpleDateFormat newSimpleDateFormat = new SimpleDateFormat( "yyyy年MM月dd日HH时mm分", Locale.getDefault()); |
警告原因:
**3:new HashMap() **
12 | @SuppressLint("UseSparseArrays") public static Map<Integer, String> CMD_MAP = new HashMap<Integer, String>(); |
解决方法:
1 | //TODO |
警告原因:Use new SparseArray(...) instead for better performance
4:"String".toUpperCase(); "String".toLowerCase();
12 | @SuppressLint("DefaultLocale") boolean b = "String".toUpperCase().equals("STRING"); |
解决方法:
1 | boolean b = "String".equalsIgnoreCase("STRING"); |
警告原因:Implicitly using the default locale is a common source of bugs: Use toUpperCase(Locale) instead
更多相关文章
- android mina 客户端无法接收信息的原因
- Android中binderDied()以及"Unknown binder error code" 出现的
- android View.GONE 失效原因
- 【更新】Google 与微软开始口水战
- Android应用程序如何避免内存泄漏以及如何检查泄漏原因
- 万树IT:你的Android不好用的原因就是这些!
- 微软一年通过Android获得几十亿美元收入,没错,是微软!
- 你的Android不好用,都是因为这几点原因
- Android屏幕适配出现的原因