个人信息保护法颁布了,App的高德SDK整改

·  阅读 7744
个人信息保护法颁布了,App的高德SDK整改

这是我参与11月更文挑战的第1天,活动详情查看:2021最后一次更文挑战

前言

不知道大家这一周过得是否安好?

最近一周我过的鸡飞狗跳的,为什么?

因为《中华人民共和国个人信息保护法》于2021年11月1日起正式实施。Apple爸爸也不忘发了封邮件给我致以亲切的问候。

心里不知道又有多少只草泥马呼啸而过。

今天就聊一聊涉及高德地图的整改

高德地图整改

image.png

因为公司的项目很老了,高德地图一直都没有向上升级,这次明确要求,地图包需要升级到8.1.0,避免因为个人隐私等问题导致拒审。

pod 'AMap3DMap'
pod 'AMapSearch'
pod 'AMapLocation'
pod 'AMapNavi'
复制代码

之前项目里面是这么集成,我直接指定版本后进行pod update后,就直接报错了,后来发现分析:

新版的AMapNavi中包含AMap3DMap中的库,同时集成两个会有问题,直接集成AMapNavi即可。

pod 'AMapSearch'
pod 'AMapLocation', '~> 2.8.0'
pod 'AMapNavi', '~> 8.0.1'
复制代码

然后在命令行里面先更新repo:

pod repo update
复制代码

然后在指向性进行库的升级即可:

pod install --verbose --no-repo-update
复制代码

升级完成后,可能涉及到部分API的更改或者弃用,大家对照着高德地图API文档逐个修复即可。

接着你会发现新版的SDK中有新增的API:

  • AMapLocationManager:

image.png

  • AMapSearchAPI:

image.png


关键是下面这段代码,大家最好在地图相关服务初始化前进行调用:

/// 地图隐私相关

/// 在构造AMapLocationManager前,需要展示用户授权弹窗,包含高德SDK隐私协议并且授权高德SDK隐私协议后,可正常使用功能
[AMapLocationManager updatePrivacyShow:AMapPrivacyShowStatusDidShow
                           privacyInfo:AMapPrivacyInfoStatusDidContain];
[AMapLocationManager updatePrivacyAgree:AMapPrivacyAgreeStatusDidAgree];

/// 在构造AMapSearchAPI前,需要展示用户授权弹窗,包含高德SDK隐私协议并且授权高德SDK隐私协议后,可正常使用地图功能。否则AMapSearchAPI构造失败返回nil
[AMapSearchAPI updatePrivacyShow:AMapPrivacyShowStatusDidShow
                     privacyInfo:AMapPrivacyInfoStatusDidContain];
[AMapSearchAPI updatePrivacyAgree:AMapPrivacyAgreeStatusDidAgree];
复制代码

高德的位置服务搜索服务我都是在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法中调用并完成的。

上面的代码块直接复制粘贴!直接复制粘贴!直接复制粘贴!

重要的事情说三遍!改变里面的传参会导致高德的服务调不起来,我已经调到坑里去过了。

需要注意的是高德地图官方有链接明明是要跳转到iOS的,结果还是跳转到Android相关的,另外官方文档也并没有说太多API调用方式。

参考文档

重要: SDK合规使用方案

开发者注意事项

iOS_Map_Doc/AMap_iOS_API_Doc_3D

总结

总之,目前首先要做的就是升级高德SDK,做好API的调用,审核等待上架。

如果Apple反馈有问题,接着继续整改。

分类:
iOS
标签:
分类:
iOS
标签: