Ajax request not working in android 9.0


#1

Hi all

 Sorry for my poor english, i just build a SPA with the latest version of framework7, it works fine

from android 6-8, but the ajax request doesn’t work in android 9.0, may i ask what is the problem for this,
is it framework7 only support to android 8.0?

also here is the list of those mobile that cannot work.
Samsung Note 3, Android 5
LG Q6+, Android 8
huawei P30 Pro, Android 9

thank you.


#2

If it is a cordova app then there is something wrong in your app config / cordova config. It works on Androids 5+


#3

hi

thanks for the reply, sir, may i ask the config that you mentioned is it refer to the page of cordova/config.xml

<?xml version='1.0' encoding='utf-8'?>
孝思園 A sample Apache Cordova application that responds to the deviceready event. Apache Cordova Team
<allow-navigation href="*" />

<platform name="android">
  <preference name="StatusBarOverlaysWebView" value="false" />
  <preference name="android-minSdkVersion" value="21" />
  <preference name="SplashMaintainAspectRatio" value="true" />
  <splash density="land-hdpi" src="res/screen/android/drawable-hdpi/screen.png" />
  <splash density="land-mdpi" src="res/screen/android/drawable-mdpi/screen.png" />
  <splash density="land-xhdpi" src="res/screen/android/drawable-xhdpi/screen.png" />
  <splash density="land-xxhdpi" src="res/screen/android/drawable-xxhdpi/screen.png" />
  <splash density="land-xxxhdpi" src="res/screen/android/drawable-xxxhdpi/screen.png" />
  <splash density="port-hdpi" src="res/screen/android/drawable-hdpi/screen.png" />
  <splash density="port-mdpi" src="res/screen/android/drawable-mdpi/screen.png" />
  <splash density="port-xhdpi" src="res/screen/android/drawable-xhdpi/screen.png" />
  <splash density="port-xxhdpi" src="res/screen/android/drawable-xxhdpi/screen.png" />
  <splash density="port-xxxhdpi" src="res/screen/android/drawable-xxxhdpi/screen.png" />
  <icon density="ldpi" src="res/icon/android/mipmap-ldpi/ic_launcher.png" />
  <icon density="mdpi" src="res/icon/android/mipmap-mdpi/ic_launcher.png" />
  <icon density="hdpi" src="res/icon/android/mipmap-hdpi/ic_launcher.png" />
  <icon density="xhdpi" src="res/icon/android/mipmap-xhdpi/ic_launcher.png" />
  <icon density="xxhdpi" src="res/icon/android/mipmap-xxhdpi/ic_launcher.png" />
  <icon density="xxxhdpi" src="res/icon/android/mipmap-xxxhdpi/ic_launcher.png" />
</platform>


<platform name="ios">
  <config-file parent="CFBundleAllowMixedLocalizations" platform="ios" target="*-Info.plist">
    <true />
  </config-file>
  <preference name="StatusBarOverlaysWebView" value="true" />
  <splash src="res/screen/ios/[email protected]~universal~anyany.png" />
  <icon height="180" src="res/icon/ios/[email protected]" width="180" />
  <icon height="60" src="res/icon/ios/[email protected]" width="60" />
  <icon height="120" src="res/icon/ios/[email protected]" width="120" />
  <icon height="76" src="res/icon/ios/[email protected]" width="76" />
  <icon height="152" src="res/icon/ios/[email protected]" width="152" />
  <icon height="228" src="res/icon/ios/[email protected]" width="228" />
  <icon height="40" src="res/icon/ios/[email protected]" width="40" />
  <icon height="80" src="res/icon/ios/[email protected]" width="80" />
  <icon height="87" src="res/icon/ios/[email protected]" width="87" />
  <icon height="57" src="res/icon/ios/[email protected]" width="57" />
  <icon height="114" src="res/icon/ios/[email protected]" width="114" />
  <icon height="72" src="res/icon/ios/[email protected]" width="72" />
  <icon height="144" src="res/icon/ios/[email protected]" width="144" />
  <icon height="167" src="res/icon/ios/[email protected]" width="167" />
  <icon height="29" src="res/icon/ios/[email protected]" width="29" />
  <icon height="58" src="res/icon/ios/[email protected]" width="58" />
  <icon height="50" src="res/icon/ios/[email protected]" width="50" />
  <icon height="100" src="res/icon/ios/[email protected]" width="100" />
  <icon height="167" src="res/icon/ios/[email protected]" width="167" />
  <icon height="1024" src="res/icon/ios/[email protected]" width="1024" />
</platform>


<preference name="UIWebViewBounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="BackupWebStorage" value="local" />
<preference name="AutoHideSplashScreen" value="false" />
<preference name="ShowSplashScreenSpinner" value="false" />
<preference name="SplashScreenDelay" value="0" />
<preference name="Suppresses3DTouchGesture" value="true" />
<preference name="Allow3DTouchLinkPreview" value="false" />
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
<preference name="AllowInlineMediaPlayback" value="true" />

i dont’ know if there is something wrong that cause those device not work.

Thank you so much


#4

Then just attach it to your PC and check what errors in browser dev tools console


#5

Hi

thanks for your reply, for me I really dont' understand what you mean by attach it to the pc browser dev tools, i already put the config xml to chrome and check with developer mode, and there is no error.

haha, sorry


#6

I mean you tell it doesn’t work? But why? Do you see any error? I say to you to take your phone, plug it with USB cable into your PC and using Chrome dev tools to check browser developer console, to see what is error exactly


#7

thank you so much for your help and i will try to test it first.


#8

Hi

I checked that the problem is not from the ajax, but from the router.navigate method, it works in android, but when i tried to test in ios simulator, routes does not work , and leave a blank page

here is the code when the request is success from ajax:

success: function(data, status, xhr){
var res = $.parseJSON(data);

			if (res.status == "success") {
				app.views.main.router.navigate("/success");
				$(".rand_num").html(res.randCode);
			}
			
			if (res.status == "regexist") {
				$(x[0]).show();
				$(".view-main").animate({ scrollTop: 0 }, "slow");  
				$(".btn_submit_wrapper").eq(0).hide();
				$(".middle_reg").show();
				$(".regerror").html("閣下已經有申請記錄,請等上一次申請完結後再申請");
			}
			
			if (res.status == "updatesuccess") {
				app.views.main.router.navigate("/updatesuccess");
			}
			
			if (res.status == "updatefail") {
				alert("更新失敗");
			}
		}

i really dont know what is happening with this in all ios version, thanks