Manjaro Linux下配置Qt Android开发环境
<p><img src="https://img2020.cnblogs.com/blog/1539665/202004/1539665-20200410114944586-1940414427.png" alt="" loading="lazy"></p><h2 id="pre-settings">Pre-Settings</h2>
<blockquote>
<p>安装Qt,勾选上Android相关的包</p>
</blockquote>
<h2 id="下载相关kits">下载相关kits</h2>
<ul>
<li>
<p>JDK</p>
<blockquote>
<pre><code class="language-bash">$ yay jdk # 列出的选项中选择一个jdk,参照官方文档选择openJDK
$ archlinux-java status # 查看系统默认的jdk
$ sudo archlinux-java set [对应的jdk包名] # 若只有一个jdk,跳过这一步
# 验证
$ java -version
$ javac -version
# 可以自己编写一个java的HelloWorld来进一步验证
</code></pre>
</blockquote>
</li>
<li>
<p>SDK</p>
<blockquote>
<p>Qt5.14好像还是不支持最新的sdk,所以下的一个旧版的,在StackOverflow找到一个旧版链接</p>
</blockquote>
</li>
<li>
<p>NDK</p>
<blockquote>
<p>同样的,在Android Developer下载对应的NDK包</p>
</blockquote>
</li>
</ul>
<h2 id="配置">配置</h2>
<ul>
<li>
<p>JDK</p>
<blockquote>
<p>Qt Creator中:<code>工具</code>-><code>选项</code>-><code>设备</code>-><code>Android</code></p>
<p>JDK location中填入JDK的路径,例如我的:<code>/usr/lib/jvm/java-8-openjdk</code></p>
</blockquote>
</li>
<li>
<p>Android settings:</p>
<ul>
<li>
<p>Pre-settings:</p>
<blockquote>
<p>在主目录下创建一个名为Android的文件夹(用来存储SDK,NDK包) ,将之前下载好的SDK、NDK解压后放入Android文件夹中</p>
</blockquote>
</li>
<li>
<p>Settings:</p>
<blockquote>
<p>Qt Creator中:<code>工具</code>-><code>选项</code>-><code>设备</code>-><code>Android</code></p>
<p>在SDK、NDK路径两栏中分别填入对应包的路径,例如我的:</p>
<pre><code>SDK:/home/jaywhen/Android/sdk
NDK:/home/jaywhen/Android/ndk
</code></pre>
<p>完成后会提示缺少一些依赖,依照提示安装即可</p>
</blockquote>
</li>
</ul>
</li>
</ul>
<h2 id="遇到的问题">遇到的问题</h2>
<ul>
<li>
<p>新建Qt Quick项目后(使用Android kits),文件目录树上的文件除了.pro文件外全是灰色的,且编译不通过</p>
<blockquote>
<p><img src="https://img2020.cnblogs.com/blog/1539665/202004/1539665-20200413021454598-881397352.png" alt="" loading="lazy"><br>
<code>这个问题困扰了我很久(太菜了),网上几乎找便了也没找到解决方案,后来经过对比官方实例程序才明白</code></p>
<h4 id="原因">原因</h4>
<p>出现这个问题可能是.pro文件的配置有问题,写入了不存在的模块</p>
<p>例如,在我的案例中,我的Android模块库中,并没有<code>virtualkeyboard</code>这一模块,而我在新建项目的时候点击了<code>Use Qt Virtual Keyboard</code>这一选项(当然这一操作在你的模块库中有<code>virtualkeyboard</code>时是没问题的),导致无法编译。<br>
<img src="https://img2020.cnblogs.com/blog/1539665/202004/1539665-20200413021527157-343026396.png" alt="" loading="lazy"></p>
<h4 id="解决">解决</h4>
<p>解决方法要么是安装对应的模块库,要么如果自己写的这个应用不需要用到虚拟键盘,那么在新建项目初期就不用勾选<code>Use Qt Virtual Keyboard</code>这一选项</p>
</blockquote>
</li>
<li>
<p>Android deploy settings file not found, not building an APK.</p>
<blockquote>
<p><code>这个问题偶尔出现,可能是由于Qt for Android的配置文件不太稳定导致的 </code></p>
<h4 id="原因-1">原因</h4>
<p>不详</p>
<h4 id="解决-1">解决</h4>
<p>打开的项目中,依次选择:<code>项目->Build</code>选中对应的编译器,将Enable Qt Quick Compiler取消勾选,等重构后再次勾选上,即可编译出apk</p>
</blockquote>
</li>
</ul>
<h2 id="测试">测试</h2>
<blockquote>
<p><img src="https://img2020.cnblogs.com/blog/1539665/202004/1539665-20200413021721271-971584105.jpg" alt="" loading="lazy"></p>
</blockquote>
<h2 id="参考">参考</h2>
<p>StackOverflow: How do I download the Android SDK without downloading Android Studio?</p>
<p>BiliBili: Qt开发android配置</p><br><br>
来源:https://www.cnblogs.com/Jaywhen-xiang/p/12672449.html
頁:
[1]