我应该编辑哪个字符串来设置完全限定的 Qt/Android 应用程序名称?

Posted

技术标签:

【中文标题】我应该编辑哪个字符串来设置完全限定的 Qt/Android 应用程序名称?【英文标题】:Which string should I edit to set the fully qualified Qt/Android app name? 【发布时间】:2016-07-25 19:26:52 【问题描述】:

~/hello 中有一个微不足道的QApplication,我编译和部署through

mkdir ~/hello_build
cd ~/hello_build
/Qt/5.7/android_armv7/bin/qmake -r -spec android-g++ ~/hello/hello.pro
make
make install INSTALL_ROOT=android

/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home/bin/keytool -genkey -v -keystore ~/hello/hello.keystore -alias hello-alias -keyalg RSA -keysize 2048 -validity 10000
/Qt/5.7/android_armv7/bin/androiddeployqt --output android --verbose --input android-libHello.so-deployment-settings.json --sign ~/hello/hello.keystore hello-alias --storepass MyPassword

此时我看到AndroidManifest.xml已经在~/hello_build/android中弹出,所以我替换

<manifest package="org.qtproject.example.Hello" 

<manifest package="com.mycorp.Hello"

并安装

/android/platform-tools/adb install ~/hello_build/android/bin/QtApp-release-signed.apk

但现在当我进入 android shell 时

/android/platform-tools/adb shell

然后检查完​​全限定的包名,我发现它仍然是org.qtproject.example.Hello

$ pm list packages | grep hello
package:org.qtproject.example.Hello

这可以早在.pro 文件中完成吗?

【问题讨论】:

【参考方案1】:

在 ~/hello_build/android/AndroidManifest.xml 中更改包名称不会影响您的输出文件,实际上您应该在编译之前设置它。为什么不在任何编译和部署命令之前在 ~/hello/android/AndroidManifest.xml 文件中定义它?我没有得到它有什么特定的原因吗?

【讨论】:

嗯..因为AndroidManifest.xml本身就是编译的结果。 哦,不。您应该通过“项目”部分中的“创建模板”按钮创建它,并在编译之前在那里设置所需的设置。看到this也不错。

以上是关于我应该编辑哪个字符串来设置完全限定的 Qt/Android 应用程序名称?的主要内容,如果未能解决你的问题,请参考以下文章

C#:有啥办法可以绕过完全限定路径的 260 个字符限制? [复制]

如何设置服务器的完全限定域名?

哪个控件可以构建十六进制编辑器?

即使在 HTML 字符串中提供了完全限定的 URL,也无法应用外部 CSS

HTTP Location 标头中的完全限定 url。为啥它很重要?

从 Blade 中的别名类获取完全限定的类名