我正准备向Play商店发布Android应用程序,该应用程序具有使用WebRTC和Socket.io构建的视频聊天功能。该应用程序在调试模式下完美运行,但当我创建一个签名的apk时,我的应用程序有一个主要问题。
问题是使用签名的apk,我仍然可以成功启动视频聊天。但是,如果我强行退出应用程序并重新打开它,我将无法再次开始视频聊天。
似乎发生这种情况是因为强行退出应用程序后再重新打开应用程序,我的应用程序无法连接到套接字服务器。由于这个socket.io回调
,我能够查明错误function reklamYukle() {
var admobid = {};
// TODO: replace the following ad units with your own
if (/(android)/i.test(navigator.userAgent)) {
admobid = { // for Android
banner: 'ca-app-pub-5534669392136777/3711456161',
interstitial: 'ca-app-pub-5534669392134577/5454702358'
};
} else if (/(ipod|iphone|ipad)/i.test(navigator.userAgent)) {
admobid = { // for iOS
banner: 'ca-app-pub-5534669392136777/7457497261',
interstitial: 'ca-app-pub-5534669392136777/5896501200'
};
} else {
admobid = { // for Windows Phone
banner: 'ca-app-pub-6869992474017983/8878394753'
};
}
AdMob.createBanner({
adId: admobid.banner,
position: AdMob.AD_POSITION.BOTTOM_CENTER,
overlap: false,
offsetTopBar: true,
bgColor: 'black',
autoshow: true
});
AdMob.prepareInterstitial({
adId: admobid.interstitial,
autoShow: true
});
}
function onDeviceReady() {
reklamYukle();
}
document.addEventListener("deviceready", onDeviceReady, false);
警告错误
错误:xhr poll error android
答案 0 :(得分:0)
现在,在签名的apk上一切正常。阅读完https://developer.android.com/training/articles/security-ssl.html
后,我开始工作了在验证服务器证书的常见问题下,其中一个问题是
服务器配置缺少中间CA
事实证明,这是失败的Socket.io调用背后的问题。我继续https://www.sslshopper.com,并为我的套接字服务器添加了url和端口。它告诉我,我的设置有问题。我回顾了我的套接字服务器的代码,并意识到我指定了错误的选项。我忘了包含 public void close(){
try {
DBFUtils.close(reader);
} catch (Exception e) {
e.printStackTrace();
}
}
,而ca
指的是错误的文件。我正在使用Let的加密功能,https://community.letsencrypt.org/t/node-js-configuration/5175
真的帮我找出了正确的选择。
cert