美文网首页
mPaaS出现的一些问题

mPaaS出现的一些问题

作者: 哈利波特会魔法 | 来源:发表于2018-05-03 15:30 被阅读0次

    1. 更换账号之后要配置的东西

      1. info.plist 配置 Product ID
      1. DemoPresetApps.bundle > NAMApplist,配置
      1. RPC代码替换
      1. 更改库里面的配置。如下:


        507BDD3F-0CE9-4575-8245-0CB23415BB14.png
      1. 替换代码里请求的版本号

    2. 原生传值给h5页面

    • 第一步:
      在 DemoPlugins.bundle > Poseidon-Extra-Config.plist 添加JSAPI
      如下:

      27403478-4EC9-45C2-A5DA-7C9A7CC62914.png
      注意:
      jsApi: 接口名字,跟H5统一
      name:类名
    • 第二步:
      创建类,类名必须以 H5JsApi4为开头,并且遵从PSDJsApiHandler,这个类。
      实现 方法

    - (void)handler:(NSDictionary *)data
            context:(PSDContext *)context
           callback:(PSDJsApiResponseCallbackBlock)callback
    
    C7F7C928-6FE3-4D00-8625-ADAF6941F82C.png

    完成以上即可成功调用。

    3. h5页面传值给原生

    完成第二步配置之后,在

    - (void)handler:(NSDictionary *)data
            context:(PSDContext *)context
           callback:(PSDJsApiResponseCallbackBlock)callback
    

    方法里面, data就是返回来的数据

    4. 唤起一个H5容器

    UIViewController *vc =  (UIViewController *)[NBServiceGet() createNBViewController:@{@"url":@"https://www.baidu.com"}];
    [self.navigationController pushViewController:vc animated:YES];
        
    //或者用下面方式
    [NBServiceGet() startSession:@{@"appId":@"2000999", @"url":@"https://www.baidu.com", @"readTitle":@YES, @"showProgress":@YES, @"backgroundColor":@16775138, @"showTitleLoading": @YES} animated:YES];
    

    5. JsApi调用 / 更换amr包

    plist 和 代码都配置了,但是进不去方法,或者
    更换amr包时,都配置好了,但是加载不出来网页
    这个时候要看:
    看看资源有没有拖进去,DemoPlugins.bundle > DemoPresetApps.bundle , 拖到Build Phases 里面。

    6. mPaaS原生功能跳转到h5页面所需要的配置

    客户端实现
    定义JS:

    - (void)handler:(NSDictionary *)data context:(PSDContext *)context callback:(PSDJsApiResponseCallbackBlock)callback
    {
        [super handler:data context:context callback:callback];
        
        /*  
        功能页面跳转: EventName  showPage, 
        参数 key: router   
        value:后台配置的路由字段(如:/loan-home为贷款页面,点击按钮加载页面时,会调到贷款页面。)
        */
        
        NSDictionary *dictData = [NSDictionary dictionary];
    //    dictData = @{@"router": @"/loan-home"};
        dictData = @{@"router": @"/save-home"};
    
        callback(dictData);
    }
    
    

    h5实现

    AlipayJSBridge.call('showPage', {
        }, (result) => {
              this.$router.push({path:result['router']})
        });    
    

    7. mPaaS平台下载RPC代码文件不是zip压缩包

    是有些数据模型删除导致的,导致API接口找不到数据模型


    611544421333_.pic_hd.jpg

    8. 数据请求,mPaaS返回来的错

    111533088595_.pic.jpg

    是mPaaS平台,RPC接口不存在,可能是后台关了接口

    8. 清除缓存

    清理缓存的不要删除离线包的路径,com.nebula都是离线包的路径

    661545010064_.pic.jpg

    9. 热修复(说下我的工程出现的问题)导致热修复不能使用

    (1)有个资源包放错位置了,应该是下面这种,


    671545028605_.pic.jpg

    但是在我的工程中,这个库放到了APCommonUI.bundle下面,会导致一些问题


    681545029581_.pic.jpg
    (2)公钥名字不对。公钥的名字要和main函数中保持一致。即 pubkey .pem 文件
    (3)注意不要用Xcode10打包,用Xcode9打包。

    相关文章

      网友评论

          本文标题:mPaaS出现的一些问题

          本文链接:https://www.haomeiwen.com/subject/jfokrftx.html