帖子
帖子
用户
博客
课程
显示全部楼层
13
帖子
0
勋章
103
Y币

[云开发] app后台定位

[复制链接]
发表于 2022-5-10 10:08:00
app获取后台定位  在手机的应用行为记录中可以看到获取到了定位信息  但是没有上传到服务器  这是什么原因  有大佬知道嘛
380
帖子
4
勋章
6
Y币
需要你自己排查

请求发出没有,服务器接到请求没有,可以使用抓包方法,usb  同步 console.log 输出等方法排查
13
帖子
0
勋章
103
Y币
log 打印了几次 后面就没了     log不打印了之后    还是可以在应用行为记录中看到 后面的获取定位信息
技术支持-F · 2022-5-10 10:18需要你自己排查

请求发出没有,服务器接到请求没有,可以使用抓包方法,usb  同步 console.log 输出等方法排查
380
帖子
4
勋章
6
Y币
你用的什么模块,怎么写的代码?
亚丝娜123 · 2022-5-10 10:23log 打印了几次 后面就没了     log不打印了之后    还是可以在应用行为记录中看到 后面的获取定位信息
13
帖子
0
勋章
103
Y币
amap 模块

// 获取定位
function getLocationAmap() {
    map = api.require('aMap');
    var mobile = $api.getStorage('mobile');
    timer = setTimeout(function () {
        getLocationAmap()
    }, 60000);

    map.getLocation({
        enableLocInForeground: true,
        notification: {
            title: '新思路',  //(可选项) 字符串类型;标题; 默认值:应用名称
            content: '正在后台运行',    //(可选项) 字符串类型;内容; 默认值:正在后台运行
            channelId: '34',   //字符串类型,通知通道号,argetSdkVersion大于等于28时必填
        }
    }, function (ret, err) {
        if (ret.status) {
            var lon = ret.lon;
            var lat = ret.lat;
            dw = gps_bgps(lon, lat)
            // console.log(mobile + "获取定位:" + JSON.stringify(dw))
            LocationAmap(mobile, dw.bd_lng, dw.bd_lat);
        } else {
            console.log(JSON.stringify(err));
        }
    });
}
//高德坐标转百度(传入经度、纬度)
function gps_bgps(gg_lng, gg_lat) {
    var X_PI = Math.PI * 3000.0 / 180.0;
    var x = gg_lng, y = gg_lat;
    var z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * X_PI);
    var theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * X_PI);
    var bd_lng = z * Math.cos(theta) + 0.0065;
    var bd_lat = z * Math.sin(theta) + 0.006;
    return {
        bd_lng: bd_lng,
        bd_lat: bd_lat
    };
}
// 打开高德地图   高德iOS定位必须
function openMap() {
    map = api.require('aMap');
    // console.log("打开地图")
    //设置地图类隐私权限
    map.updateMapViewPrivacy({
        privacyAgree: 'didAgree',
        privacyShow: 'didShow',
        containStatus: 'didContain'
    });
    map.open({
        rect: {
            x: 0,
            y: 0,
            w: 0,
            h: 0
        },
        showUserLocation: true,
        zoomLevel: 11,
        center: {
            lon: 116.4021310000,
            lat: 39.9994480000
        },
        fixedOn: api.frameName,
        fixed: true
    }, function (ret, err) {
        // console.log("openmap:" + JSON.stringify(ret))
        // console.log("openmap:" + JSON.stringify(err))
    });
}

// 关闭地图
function closeMap() {
    map = api.require('aMap');
    map.close();
}
// 停止定位
function stopLocationAmap() {
    clearTimeout(timer)
}
// 上传定位
function LocationAmap(iphone, lng, lat) {
    console.log("发送请求")
    dealData("driver/transport/reportLocation?mobile=" + iphone + "&lng=" + lng + "&lat=" + lat, 'GET', {},
        function (ret) {
            if (ret.status == 0) {
                console.log(JSON.stringify(ret));
            } else {
                console.log("定位上传失败!");
                return;
            }
        },
        function (err) {
            console.log(JSON.stringify(err));
            // myAlert('服务器内部错误!');
        })
}
技术支持-F · 2022-5-10 10:31你用的什么模块,怎么写的代码?
380
帖子
4
勋章
6
Y币
aMapReportLocationG    aMapReportLocation  用这种自带上传的测试看看效果
亚丝娜123 · 2022-5-10 10:33amap 模块

// 获取定位

13
帖子
0
勋章
103
Y币
添加了一个定时器模块 现在可以上传了
技术支持-F · 2022-5-10 14:33aMapReportLocationG    aMapReportLocation  用这种自带上传的测试看看效果
8
帖子
0
勋章
2086
Y币
亚丝娜123 · 2022-5-10 14:53添加了一个定时器模块 现在可以上传了

您好,请教一下用的那个定时器模块呀
您需要登录后才可以回帖 登录

本版积分规则