2017-10-04 77 views
1

我有關於發佈我的Android應用程序到Android商店的問題,的Qt 5.9.1發佈的Android商店,OpenSSL的漏洞拒絕

OpenSSL的 的漏洞OpenSSL的1.02f/1.01r得到解決。要確認您的OpenSSL版本,您可以執行grep搜索:

\ $ unzip -p YourApp.apk |字符串| grep的「OpenSSL的」

之後,我試圖根據Official Qt instructions都建設自己的OpenSSL庫和使用here 給出預建圖書館,但結果是一樣的。如果有人向我解釋我應該怎麼做,我將不勝感激。

+1

https://boringssl.googlesource.com/boringssl/+/HEAD/BUILDING.md –

回答

0

您需要較新的OpenSSL庫才能進入遊戲商店。 我使用1.0.2k,他們被谷歌接受。

首先確保你的.pro文件中鏈接了正確的庫。

P.S .:將路徑更改爲正確的路徑。之後不要忘記運行qmake和clean build。

contains(ANDROID_TARGET_ARCH,armeabi-v7a) { 
    ANDROID_EXTRA_LIBS = \ 
     $$PWD/../../Android/openssl-1.0.2k/libcrypto.so \ 
     $$PWD/../../Android/openssl-1.0.2k/libssl.so   
} 

contains(ANDROID_TARGET_ARCH,x86) { 
    ANDROID_EXTRA_LIBS = \ 
     $$PWD/../../OpenSSL/libcrypto.so \ 
     $$PWD/../../OpenSSL/libssl.so 
} 

我已經上傳我的編譯的OpenSSL 1.0.2k對armeabi-V7A here

+0

@john whitegun,它有效嗎?如果是這樣,請考慮標記答案,謝謝 – Xplatforms

+0

感謝您的回覆,我已經完成了這樣的解決方案。實際上,問題不在於apk文件是否包含.so文件。這是關於包含的OpenSSL文件不適合我的應用程序。我通過在從源代碼構建.so文件之前設置正確的選項(如ndk版本)來構建自己的.so文件來解決該問題。 –

0

如果你是一個Windows用戶喜歡我,請首先考慮安裝Linux的虛擬機。創建你的虛擬機後,安裝你已經在你的項目中使用的ndk。

按照使用Qt提供的說明,here

確保您輸入正確的NDK版本,Android編譯平臺和指令給其他的事情。

當我用我自己的.so文件更改.so文件後,我重新發布了我的應用程序以存儲並且沒有任何警告地接受它。