基本盲着开发。这。。。。。。
话说遇到这个问题,解决方法:
一、等系统修复
二、通过反射调用android的Log.d
三、导入android.jar进行直接调用
这里提供二方法:
public class MyLog {
public static void D(String str){
RefInvoke.invokeStaticMethod("android.util.Log","d",new Class[]{String.class,String.class},new Object[]{"yan",str});
}
public static void E(String str){
RefInvoke.invokeStaticMethod("android.util.Log","e",new Class[]{String.class,String.class},new Object[]{"yan",str});
}
}
public class RefInvoke {
//多个参数
public static Object invokeStaticMethod(Class clazz, String method_name, Class[] pareTyples, Object[] pareVaules) {
try {
Method method = clazz.getDeclaredMethod(method_name, pareTyples);
method.setAccessible(true);
return method.invoke(null, pareVaules);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
方法三:
把android sdk下的 android.jar 复制出来,放到libs上再引用
//implementation fileTree(dir: 'libs', include: ['.jar', '.har'])
compileOnly fileTree(dir: 'libs', include: ['.jar', '.har'])
编译之后就可以直接调用android的方法了
最终实际结果:
坑还是有点多。。。使用鸿蒙API开发的,慎行。。。