2

我使用 AssetsLibrary 来展示用户相机胶卷中的图片。但是我对这些图片的位置数据不感兴趣。有没有办法禁用此位置服务提示?

4

1 回答 1

5

没有办法禁用提示。启用“位置服务”是使用 AssetsLibrary 的要求。原因是照片库中的任何照片/视频都可能包含地理数据。这些数据不仅可以通过 ALAssetPropertyURLs 获得,而且如果您从资产中读出原始数据(通过使用 ALAssetsRepresentation 的 getBytes:fromOffset:length:error: 方法)也可以使用。因为没有办法从原始图像数据中去除地理元数据(如果位置服务被禁用),我猜设计决定是让“位置服务”强制使用 AssetsLibrary。

这个要求可能会让用户感到困惑。所以你需要做两件事:

1) 如果用户拒绝访问定位服务,则在您的应用需要此访问权限并且应用实际上并不能确定当前位置或任何 GPS/数据时显示一条明确的消息。

2) 一旦用户在初始对话框中按下“否”,就会显示如何启用定位服务的清晰说明。

干杯,

亨德里克

于 2011-05-08T07:45:54.277 回答