uni-app安卓原生插件的开发常见问题

来客电商

Q:云打包后提示”XXX”插件不存在?

A:先确认打包时是否勾选了”XXX”插件。如果勾选了依然报错提示”XXX”插件不存在请联系客服沟通。

Q:插件中怎么跳转原生Activity页面

A:获取WXSDKInstance对象。该对象中可以获取到上下文.通过startActivity跳转

*示例*

@JSMethod (uiThread = true)
public void gotoNativePage(){
      if(mWXSDKInstance != null) {
             Intent intent = new Intent(mWXSDKInstance.getContext(), NativePageActivity.class);
              mWXSDKInstance.getContext().startActivity(intent);
       }
}

Q:插件跳转Activity页面后。Activity页面关闭后有数据需要返回。怎么能实现?

A:可以按以下步骤操作实现:

在插件的WXModule/WXComponent实现onActivityResult方法。通过标识code和参数KEY去区分当前的Result是你需要的返回值

*示例*

public static int REQUEST_CODE = 1000; //数据返回标识code
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
      if(requestCode == REQUEST_CODE && data.hasExtra(“respond”)) {
           Log.e(“TestModule”, “原生页面返回—-“+data.getStringExtra(“respond”));
      } else {
            super.onActivityResult(requestCode, resultCode, data);
     }
}

通过startActivityForResult加上返回标识code跳转其他Activity页面。

*示例*

@JSMethod (uiThread = true)
public void gotoNativePage(){
      if(mWXSDKInstance != null && mWXSDKInstance.getContext() instanceof Activity) {
             Intent intent = new Intent(mWXSDKInstance.getContext(), NativePageActivity.class);
             ((Activity)mWXSDKInstance.getContext()).startActivityForResult(intent, REQUEST_CODE);
     }
}

Activity页面在关闭前调用setResult设置标识code将要返回的参数放进Intent中。

*示例*

Intent intent = new Intent();
intent.putExtra(“respond”, “我是原生页面”);
setResult(TestModule.REQUEST_CODE, intent);
finish();

Q:插件开发支持Androidx吗?

A:目前插件开发还不支持Androidx.请使用请使用v4、v7实现相关开发。


<来客推(www.laiketui.com)是国内知名商城系统及商城网站建设提供商,为企业级商家提供零售商城、B2B2C多用户商城系统、社区团购商城系统、微信分销系统、小程序商城、商城系统等多端商城网站建设解决方案>

申明:本网站部分文章和图片来源网络编辑,如有侵权及时沟通删除,来客电商原创文章,转载请注明来源。

相关新闻

QR code