android/ios 一键抽取硬编码字符串

由于老项目 做国际化困难,抽取繁琐
最终实在蛋疼 最终开发插件来解决
android studio 插件 一键抽取硬编码字符串
xcode 一键抽取硬编码字符串

环境配置android studio ,appcode idea 环境类似
1.安装插件

插件下载点击

android/ios 一键抽取硬编码字符串_第1张图片

android/ios 一键抽取硬编码字符串_第2张图片

安装教程查看地址(可以之后忘记博客地址 可以在插件描述的地方找到)

android/ios 一键抽取硬编码字符串_第3张图片

2. 配置生成文件路径

android 就是string.xml
ios Localizable.strings文件 

android/ios 一键抽取硬编码字符串_第4张图片

出现这种情况 请仔细看描述或者这个文档

android/ios 一键抽取硬编码字符串_第5张图片

IOS 使用教程如下

支持任意单个.m文件扫描(方便处理新需求加的类,而不影响别的业务)

支持任意目录(会扫描其中的.m文件)


(ios 可以用as 或者appcode 等idea工具打开,xcode 太封闭了)
android/ios 一键抽取硬编码字符串_第6张图片

Android

支持layout目录

支持任意单个layout.xml

支持任意单个.kt文件扫描(方便处理新需求加的类,而不影响别的业务)

支持任意目录( 会扫描其中的.kt文件)


进行右键弹出菜单

android/ios 一键抽取硬编码字符串_第7张图片

 android/ios 一键抽取硬编码字符串_第8张图片

 执行完成
android/ios 一键抽取硬编码字符串_第9张图片

 最终结果
android/ios 一键抽取硬编码字符串_第10张图片

常见问题
1.为什么要配置生成路径 而不是自动选择当前moudle的res.values路径?
由于组件化开发导致字符串资源管理,重复混乱,我跟倾向统一管理字符串,建议抽取一个独立的moudle或者devpod 来指定string.xml或者 Localizable.strings

注意:android 是string.xml ios 是Localizable.strings 

2.代码里面抽取的代码替换结果?
 iOS 是 "R.string.localized_xxxx" 这个是我的另外一个脚本生成类似Android R清单文件,不用key 硬编码引用,行业有类似的项目比如R.swift ,开发者可以批量替换R.string.localized_-> NSLocalizedString(key, comment)

android 是生成
com.xxf.application.applicationContext.getString(com.next.space.cflow.resources.R.string.xxx)
开发者可以后期进行批量替换

开发者支持
QQ:2767356582 申请请备注是 国际化开发 避免其他申请信息干扰

你可能感兴趣的:(ios,国际化,android,一键抽取字符串)