有的时候我们调试Android应用可能涉及中文内容,但是在DDMS的Logcat下显示中文时为乱码,这里大家可以通过自己编译SDK来解决,有关编译Android SDK方法可以参考如何编译Windows平台的Android SDK 下面一起看下哪个代码存在问题吧。
在Android源码DDMS中我们找到 MultiLineReceiver 这个类,对应GIT开源在development/tools/ddms/libs/ddmuilib/src/com/android/ddmuilib/,最主要的就是有关String实例化时最后一个参数,看到ISO-8859-1了吧,我们将这个换成gb2312就可以很好的显示简体中文了,繁体嘛可以考虑big5这种编码等等了,当然了Android123推荐大家使用UTF-8这种兼容性最好的。
public abstract class MultiLineReceiver implements IShellOutputReceiver {
public final void addOutput(byte[] data, int offset, int length) {
if (isCancelled() == false) {
String s = null;
try {
s = new String(data, offset, length, "ISO-8859-1"); //问题在这里,ISO-8859-1就是Latin-1我们俗称西欧语言
} catch (UnsupportedEncodingException e) {
// normal encoding didn't work, try the default one
s = new String(data, offset,length);
}
// ok we've got a string
if (s != null) {
// if we had an unfinished line we add it.
if (mUnfinishedLine != null) {
s = mUnfinishedLine + s;
mUnfinishedLine = null;
}
mArray.clear();
int start = 0;
do {
int index = s.indexOf("\r\n", start);
// if \r\n was not found, this is an unfinished line
// and we store it to be processed for the next packet
if (index == -1) {
mUnfinishedLine = s.substring(start);
break;
}
String line = s.substring(start, index);
if (mTrimLines) {
line = line.trim();
}
mArray.add(line);
// move start to after the \r\n we found
start = index + 2;
} while (true);
if (mArray.size() > 0) {
String[] lines = mArray.toArray(new String[mArray.size()]);
// send it for final processing
processNewLines(lines);
}
}
}
}
}
分享到:
相关推荐
通过以上步骤,大部分情况下都可以解决ADT Layout Editor中文显示乱码的问题。如果问题依然存在,可能需要进一步检查Eclipse的工作空间配置、JVM参数,甚至考虑更换其他IDE,如Android Studio,它在处理多语言字符集...
呵呵,收小小的一分,因为别的资源下载也要积分。大家下载了直接和以前ADT一样更新,在eclipse的help->install new software直接安装本地,找到这个文件夹更新,重启eclipse,LOGCAT就完美支持中文啦。
2.网上的adt24.0.2版本对logcat日志有问题 3.里面已经包含com.android.ide.eclipse.adt_24.2.0.20160729.jar修复支持了jdk8编译环境 4.里面已经包含了build-tools\25.0.3的dx.jar修改后文件 参考链接: ...
6. **配置Eclipse ADT**:在Eclipse中,打开`Window > Preferences > Android > DDMS`,检查`Device`视图是否已打开,并确保你的设备被正确识别。如果需要,可以尝试重启Eclipse和ADB服务。 7. **使用命令行调试**...
在24.2.0这个版本中,Eclipse ADT针对开发者们遇到的一些问题进行了优化,特别是针对无法正常显示LogCat日志的故障进行了修复。LogCat是Android系统中的一个重要工具,它记录了应用程序运行时的各种调试信息,对于...
《ADT7461A中文手册》是一个重要的参考资料,主要针对ADT7461A这款集成温度传感器的使用和开发。这份手册包含了全面的技术规格、操作指南以及详细的电路应用示例,对于电子工程师尤其是那些在温度监测系统设计领域的...
6. **清空Logcat缓存**:在Eclipse的DDMS视图中,尝试清空Logcat缓存,然后重新启动应用以获取新的日志输出。 7. **使用my_ddmlib**:如果提供的压缩包中包含名为"my_ddmlib"的文件,这可能是一个自定义的DDMLib库...
7. **使用DDMS**:Eclipse中的DDMS透视图也可以查看logcat,点击`Window` -> `Open Perspective` -> `Other` -> `DDMS`。 此外,Android Device Monitor(现在已被Android Studio的Logcat替代)是一个图形界面工具...
5. **DDMS (Dalvik Debug Monitor Service)**: DDMS是Android的调试工具,可以监控应用的内存使用、CPU使用率、线程状态,并提供了模拟GPS位置、接收SMS等功能,帮助开发者调试应用。 6. **ProGuard**: ADT还包括了...
4. **DDMS (Dalvik Debug Monitor Service)**: 一个强大的调试工具,提供进程管理、内存分析、性能监视等功能,帮助开发者定位和解决问题。 5. **Android Hierarchy Viewer**: 用于查看Android应用用户界面层次结构...
在这个版本“ADT-24.2.0.rar”中,我们聚焦于这个特定的更新,它声称是最后一个版本,并且特别提到解决了logcat不输出的问题。 1. **ADT(Android Developer Tools)**:这是Google提供的一个插件,专为Eclipse设计...
5. **调试工具**:包括LogCat在内的调试工具套件,可以帮助开发者追踪代码执行情况,定位并解决问题。 6. **版本控制集成**:与Git、SVN等版本控制系统无缝集成,便于团队协作开发。 7. **构建与打包**:自动化...
1. **性能优化**:随着版本的不断迭代,ADT团队通常会针对之前版本中的性能问题进行优化,提高编辑和构建速度。 2. **错误修复**:每个新版本都会修复旧版本中存在的各种bug,提升整体稳定性。 3. **新特性支持**:...
在Android开发过程中,Eclipse是曾经广泛使用的集成开发环境(IDE),而Logcat是...一旦找到问题所在,按照“解决方法.txt”中的指导进行操作,通常就能恢复Logcat的正常工作,从而帮助你顺利进行Android应用的调试。
ADT7420是一款16位数字温度传感器,由Analog Devices公司生产,它提供了高精度和宽测量范围的温度检测解决方案。这款传感器在工业、汽车和消费电子领域广泛应用,因其卓越的性能和易用性而受到青睐。本文将详细讲解...
如果你遇到上述问题,可以尝试升级Eclipse中的ADT至这个版本。升级过程通常包括卸载现有的ADT插件,然后导入ADT-24.2.0-20160729.zip文件中的内容。导入完成后,确保在Eclipse的插件管理器中正确安装并激活新版本的...
ADT_LanguagePack_eclipse_zh 是Google发布的ADT(Android开发工具包)的eclipse插件中文语言包 最新更新请关注:http://code.google.com/p/adt-zh/ 翻译工作感谢 邹庆云 (Cherry Chou) 的大力支持; 由于ADT插件很...
标题中的"ADT24.2.0最后版本.zip"指的是Android Developer Tools (ADT)的版本24.2.0,这是一个集成开发环境(IDE)插件,专为Eclipse设计,用于帮助开发者构建、调试和发布Android应用程序。这个版本被视为ADT的最终...
4. **文档查阅**:充分利用官方文档,学习如何利用ADT的各种功能,解决开发过程中遇到的问题。 总的来说,ADT 20.0.3是Android开发者的重要工具,提供了全面的开发、调试和测试功能。通过熟练掌握这个版本的ADT,...