测试机是小米5s MIUI 9.5。
我在代码中使用了rhino作为js引擎
- private void setEcmaScriptEngine() {
- engine = new ScriptEngineManager().getEngineByName(\"rhino\");
- }
复制代码 这是初始化引擎的代码,之后会在一个方法中调用engine中的eval函数
- private String complie(String value, int key) {
- try {
- engine.eval(new InputStreamReader(getResources().openRawResource(R.raw.encrypt)));
- String evalStr = \"compile(\\\\\\\"\" + value + \"\\\\\\\", \" + key + \")\";
- String s = (String) engine.eval(\"eval(\\\"\"+evalStr+\"\\\")\");
- Log.d(TAG, \"compile key=\" + s);
- return s;
- } catch (Exception e) {
- Log.e(TAG, \"出现错误\", e);
- throw new RuntimeException(e);
- }
- }
复制代码 在调用engine.eval的时候会报空指针。我用logcat抓取出错信息之后的报错如下:
360社区
未加固时,不会报错,所以应该是加固后出现的错误,有什么解决方法吗?
|
|
|
|
评论
直达楼层