8***@qq.com
8***@qq.com
  • 发布:2019-10-10 18:05
  • 更新:2020-04-12 11:09
  • 阅读:1103

线上打包后,在iOS上 jquery.i18n不能够翻译

分类:云服务

如题:

不知道是不是因为最近线上打包做了iOS13的处理.

现在线上打包的ipa文件中使用了jquery.i18n翻译,以前是能够正常翻译的但是现在不能识别

线上打包的apk文件能够正常翻译

语言文件的后缀是.propertites

使用HBuilder线上打包,无论是ipa还是apk文件都能够正常识别翻译

以前使用HBuilderX也是能够正常翻译

2019-10-10 18:05 负责人:无 分享
已邀请:
DCloud_heavensoft

DCloud_heavensoft

  • 8***@qq.com (作者)

    在配置文件中添加了"plus": { "kernel": { "ios": "UIWebview" }, // ... }使用HX2.1.1线上打包了一个ipa文件,能够正常翻译


    但是有个问题:将来苹果默认使用WKWebView的时候还得出问题是吗

    2019-10-11 11:07

  • DCloud_heavensoft

    回复 8***@qq.com: 那就要看jquery.i18n的源码里哪里写的有问题,导致无法兼容wkwebview了,一般jq的ajax是无法在wkwebview里使用的,需要改成plus.net或在plus ready后调用mui的ajax

    2019-10-11 13:53

  • 8***@qq.com (作者)

    回复 DCloud_heavensoft:

    我新建了一个MUI的项目,试了试在使用WKWebView的情况下


    不论是是用jquery还是Mui的ajax都是请求失败. 使用安卓的手机测试两个ajax请求都没有问题


    <!DOCTYPE html>  
    <html>
    <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <title></title>
    <script src="js/mui.min.js"></script>
    <script src="js/jQuery.js" type="text/javascript" charset="utf-8"></script>
    <link href="css/mui.min.css" rel="stylesheet"/>
    <script type="text/javascript" charset="utf-8">
    $(function() {
    $.ajax({
    url: "./data/data.json",
    dataType: "json",
    type: 'POST',
    success: function(res) {
    alert('success')
    },
    error: function(xhr, type) {
    alert('xhr.status: '+ xhr.status + ' type: '+type)
    }
    })
    })
    mui.init();
    mui.plusReady(function() {
    $.ajax({
    url: "./data/data.json",
    dataType: "json",
    type: 'POST',
    crossDomain: true, //强制使用5+跨域
    success: function(res) {
    alert('success')
    },
    error: function(xhr, type) {
    alert('xhr.status: '+ xhr.status + ' type: '+type)
    }
    })
    })
    </script>
    </head>
    <body>

    </body>
    </html>

    附:

    HX版本 2.3.3.20190923

    iOS版本 12.4


    麻烦帮忙看下

    2019-10-11 17:30

  • DCloud_heavensoft

    回复 8***@qq.com: 用 mui.ajax,不是jq的ajax

    2019-10-11 19:44

  • 8***@qq.com (作者)

    回复 DCloud_heavensoft: 前面是代码贴错了,不好意思,是用的


    mui.plusReady(function(){  
    mui.ajax({
    ...
    })
    })

    mui.ajax也请求不到 状态值: 0, 错误类型: error

    2019-10-12 09:06

  • 8***@qq.com (作者)

    回复 DCloud_heavensoft: 发现问题了:


    url地址问题,使用http://s.music.163.com/search/get/?type=1&limit=5&s=喜欢你这样的网络地址能够请求成功


    请求本地的json文件../data/data.json,或者/Mui_ajax/data/data.json相对地址或者绝对地址就直接请求出错

    2019-10-12 10:07

5***@qq.com

5***@qq.com - 渣渣一个

你好,我也遇到这个问题了,请问您有处理方法吗

  • 8***@qq.com (作者)

    也是本地文件ajax请求失败是吗?目前还没有解决方案

    2019-10-21 16:13

1***@qq.com

1***@qq.com - poor-bird

"kernel" : {
"ios" : "WKWebview" ,//或者 "UIWebView" iOS13开始苹果将UIWebview列为过期API
"recovery": "restart|reload|none"
},

请问WKWebview模式下ios 使用vue的i18n为啥不能显示啊,该如何解决, UIWebView 的ios使用这种模式的时候他可以使用i18n但是打包的app确无法正常运行,,我现在急需解决,希望会的大佬们能够给点建议

  • DCloud_heavensoft

    首先确保使用最新版HBuilderX,如果坚持使用uiwebview的话,打包时要在manifest里勾选uiwebview模块。然后这个库不兼容wkwebview属于这个库的bug,一般都是跨域引起的

    2020-04-13 22:51

  • yaodaren

    回复 DCloud_heavensoft: 5+App离线打包上架,必须得使用WKUIwebview,国际化又只能借助18n,这不是死循环了么

    2020-05-08 08:59

  • DCloud_heavensoft

    回复 yaodaren: 这是这个js库不兼容wkwebview,可以改这个库的源码,https://ask.dcloud.net.cn/article/36348

    2020-05-12 14:19

  • 1***@qq.com

    请问大佬问题解决了没有,我也遇到了

    2022-03-02 11:45

该问题目前已经被锁定, 无法添加新回复