d***@163.com
d***@163.com
  • 发布:2019-06-11 09:24
  • 更新:2020-10-22 11:21
  • 阅读:1627

【报Bug】plus.android.importClass("android.content.Context")在android9.0/安卓9系统中无法执行

分类:HBuilder

详细问题描述

在android9.0手机中发现,代码在执行到
var context = plus.android.importClass("android.content.Context")
这一步后就中断超时了

[内容]

重现步骤

[步骤]

if(plus.os.name == "Android"){  
                    setGPS_Panel();  
                }  
                        function setGPS_Panel(){  
                if(plus.os.name == "Android"){  
                    console.log('setGPS_Panel');  
                    console.log('setGPS_Panel context内容:'+plus.android.importClass("android.content.Context"));  
                    var context = plus.android.importClass("android.content.Context");  
                    console.log('setGPS_Panel context:----------------');  
                    var locationManager=plus.android.importClass("android.location.LocationManager");  
                    var main=plus.android.runtimeMainActivity();  
                    var mainSvr=main.getSystemService(context.LOCATION_SERVICE);  
                    var gpsProvider = mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER);//检查是否开启了GPS  
                    if(!gpsProvider){  
                        var message = "为了获取您的精准位置,请开启GPS设备。";  
                        var title = "GPS未启用";  
                        var alertCB = function(){  
                            var Intent = plus.android.importClass("android.content.Intent");  
                            var mIntent = new Intent('android.settings.LOCATION_SOURCE_SETTINGS');  
                            main.startActivity(mIntent);//打开GPS设置  
                        }  
                        plus.nativeUI.alert(message, alertCB, title);  
                    }  
                }  
            }

初始化地图时打开GPS

[结果]

安卓9手机中的控制台输出

执行到plus.android.importClass("android.content.Context")后程序无法继续后续代码

[期望]
安卓8手机中的控制台输出

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
HBuilder

[IDE版本号]
HBuilder
9.1.29.201811231920

[windows版本号]
win10

[mac版本号]

App运行环境说明

[Android版本号]
8.0.0,9.0.0

[iOS版本号]

[手机型号]

[模拟器型号]

附件

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]

//打开GPS  
            if(plus.os.name == "Android"){  
                    setGPS_Panel();  
                }  
                        function setGPS_Panel(){  
                if(plus.os.name == "Android"){  
                    console.log('setGPS_Panel');  
                    console.log('setGPS_Panel context内容:'+plus.android.importClass("android.content.Context"));  
                    var context = plus.android.importClass("android.content.Context");  
                    console.log('setGPS_Panel context:----------------');  
                    var locationManager=plus.android.importClass("android.location.LocationManager");  
                    var main=plus.android.runtimeMainActivity();  
                    var mainSvr=main.getSystemService(context.LOCATION_SERVICE);  
                    var gpsProvider = mainSvr.isProviderEnabled(locationManager.GPS_PROVIDER);//检查是否开启了GPS  
                    if(!gpsProvider){  
                        var message = "为了获取您的精准位置,请开启GPS设备。";  
                        var title = "GPS未启用";  
                        var alertCB = function(){  
                            var Intent = plus.android.importClass("android.content.Intent");  
                            var mIntent = new Intent('android.settings.LOCATION_SOURCE_SETTINGS');  
                            main.startActivity(mIntent);//打开GPS设置  
                        }  
                        plus.nativeUI.alert(message, alertCB, title);  
                    }  
                }  
            }

联系方式

[QQ]
1550392099

2019-06-11 09:24 负责人:无 分享
已邀请:
Edison_Sun

Edison_Sun

这么久都没消息?

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