init.lua 三行配置决定打包结果
最小的 init.lua
appname = "demo"
appver = "1.0"
packagename = "com.androlua.demo"
| 字段 | 决定什么 |
|---|---|
| appname | 打包出的应用在桌面显示的名字 |
| appver | 版本号 |
| packagename | 应用的唯一包名 |
三行的江湖规矩
appname
桌面上那个名字,中英文都行。改了它,打包安装后桌面图标下的文字跟着变。
appver
随便什么格式的版本字符串,1.0、2.3.1 都可以。升级覆盖安装时它主要负责「看起来像新版本」。
packagename——最重要的一行
它是打包结果的身份证,写错有两个后果:
- 太随意:
com.example.test这种一搜一抓的通用名,跟别的社区工程冲突,覆盖安装时互相顶掉; - 想改名就改名:包名一改,系统就当成另一个应用,旧版不会自动升级,桌面出现两个图标——这是特性不是 bug,合理利用可以做并存的多版本。
社区惯例是反域名风格:com.你的名字.应用名。只要全球唯一,怎么写都合法。
两个容易被忽略的细节
帮助文档里有两句容易被忽略的话:
- 没有 init.lua 时打包当前文件:单个脚本文件也能直接打包(见打包成 APK),只是应用名版本都走默认;
- 三行齐全才打包整个目录:有 init.lua,目录下所有 lua 文件一起进包,main.lua 当入口。
跟主页的呼应
打包安装后,回主页列表搜 appname——那一行里显示的版本号与包名,正是 init.lua 三行的回响(见读懂一行)。改了 init.lua 重新打包,对比两行信息就能确认新版装上了。