Qt for Android调用android原生控件安装apk
生活随笔
收集整理的這篇文章主要介紹了
Qt for Android调用android原生控件安装apk
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Qt開發Android應用,做軟件升級的時候,需要調用android借口安裝程序,
首先在java文件中用android接口封裝一個分享功能的方法,然后在C++中調用
QAndroidJniObject
::callStaticMethod即可。
首先,如果是一個新創建的Qt工程,需要創建一個AndroidManifest.xml文件,創建過程不再贅述,然后創建一個Java的類,繼承于
然后定義一個公有的靜態函數
public static void installApk(String filePath,QtActivity activity){Intent intent = new Intent();// 執行動作intent.setAction(Intent.ACTION_VIEW);File file = new File(filePath);// 執行的數據類型intent.setDataAndType(Uri.fromFile(file),"application/vnd.android.package-archive");activity.startActivity(intent);}
其中filePath是安裝包所在的存儲位置,由C++傳入
接下來看看C++端的調用方式
void AndroidInterface::installApk(const QString &filePath) {QAndroidJniObject jFilePath = QAndroidJniObject::fromString(filePath);QAndroidJniObject activity = QtAndroid::androidActivity();QAndroidJniObject::callStaticMethod<void>("com/lyy/test/MainActivity","installApk","(Ljava/lang/String;Lorg/qtproject/qt5/android/bindings/QtActivity;)V",jFilePath.object<jstring>(),activity.object<jobject>()); } 這里直接傳入安裝包所在的位置即可。
總結
以上是生活随笔為你收集整理的Qt for Android调用android原生控件安装apk的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt for Android 调用and
- 下一篇: Qt for Android调用Andr