AndroidThings中文乱码最新解决方案

在我们满怀热情的端着开发板开发我们第一个hello world程序时,细心的人可能会发现,一旦我们在项目中使用中文会出现一堆乱码,特奉上一招秒杀方案

我们常规通过android-things-setup-utility-windows工具或通过官网链接下载安装的通用镜像系统是没有预装中文字体的,怎么解决呢?

通过前面我们知道如何去定制一个AndroidThings系统镜像,那么,其中在第四步的时候,可以选择上传font package,点击upload将字体包上传

文章中所用字体包下载地址:

https://download.csdn.net/download/cc_want/10374045

参考上一章:

Android things定制系统镜像


这里注意一下,字体包必须压缩为zip格式,且名称必须是

否则会出现以下提示


字体包上传成功后,如下:


然后重新安装系统镜像,就可以发现完美解决了,这是官方给提供的方法,强烈推荐,当然也有非正式的方法

非正式的方法如下:

public class MyApp extends Application {  
    public static Typeface typefaceStHeiTi;  
  
    @Override  
    public void onCreate() {  
        super.onCreate();  
        typefaceStHeiTi = Typeface.createFromAsset(getAssets(), "fonts/STHeiti.ttf");  
  
        try {  
            Field field = Typeface.class.getDeclaredField("MONOSPACE");  
            field.setAccessible(true);  
            field.set(null, typefaceStHeiTi);  
        } catch (NoSuchFieldException e) {  
            e.printStackTrace();  
        } catch (IllegalAccessException e) {  
            e.printStackTrace();  
        }  
    }  
}  
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">  
    <item name="android:typeface">monospace</item>  
</style> 

当然这种方法不保险,也不是完全之策,但如果你只是研究学习用,那么还是建议用这种方法,简单,快捷

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值