4***@qq.com
4***@qq.com
  • 发布:2019-09-17 11:21
  • 更新:2019-09-18 09:10
  • 阅读:1240

怎么样调用原生Activity?

分类:uni-app

正在开发一个app,硬件厂商给的SDK要求继承BaseActivity。我直接用原生插件继承WXModule的JSMethod里面 startActivity(),结果出现空白页什么也没有,而且卡死了,只能强制结束。有没有其他办法?

public class BleLockModule extends WXModule  {  

    BleLock bleLock=new BleLock();  
    String address="";  

    @JSMethod(uiThread = true)  
    public void toast(String message,final JSCallback jsCallback){  
        Toast.makeText(mWXSDKInstance.getContext(),message,Toast.LENGTH_LONG).show();  
        JSONObject result = new JSONObject();  
        result.put("data","我是来自原生插件的数据");  
        jsCallback.invoke(result);  

    }  

    @JSMethod(uiThread =true)  
    public void openLock(JSONObject options,final JSCallback jsCallback){  
        //String deviceId=options.getString("deviceId");  
        final Context context = mWXSDKInstance.getContext();  

        Activity activity= (Activity) mWXSDKInstance.getContext();  
        Intent it=new Intent(activity,OpenLocakActivity.class);  
        Bundle bundle =new Bundle();  
        it.putExtras(bundle);  
        it.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP );  
        context.startActivity(it);  
}  
}
2019-09-17 11:21 负责人:无 分享
已邀请:
唯行堂

唯行堂

问题有解决吗 我也一样

4***@qq.com

4***@qq.com (作者)

解决了,解决办法:设置布局的时候try catch 一下 看下报什么异常,再按照这个异常搜解决办法。

  • 灿少

    您好,能提供一下代码看看吗?我的代码:


    @JSMethod(uiThread = true)  
    public void scan(JSCallback callback) {
    if(!(mWXSDKInstance.getContext() instanceof Activity)) {
    Log.w("ACTIVITY:", "不是一个Activity");
    return;
    }
    Intent intent = new Intent(mWXSDKInstance.getContext(), ScanActivity.class);
    mWXSDKInstance.getContext().startActivity(intent);
    }

    但一直打不开ScanActivity

    2020-04-10 19:49

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