# IOS定位web **Repository Path**: brtbeacon/ios_location_web ## Basic Information - **Project Name**: IOS定位web - **Description**: No description available - **Primary Language**: Objective-C - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-09-21 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # NativeH5Map - #### 项目介绍 通过APP展示H5地图,本demo主要包含app与h5交互:展示H5地图、js调用APP蓝牙和GPS状态、调用IOS系统分享、APP传人js扫描数据等。
### changeLog 2019.03.29
新增实景代码,需新增相机权限NSCameraUsageDescription和修改WebVC类 2018.10.12
重新编译TTLock.framework,启用bitcode 2018.9.20
修正钥匙链接 2018.9
添加APP开锁代码:LockManager类 添加js alert等支持 添加detail接口 #### 集成开发 1. 引入本demo内WebVC、WeakScriptMessageDelegate和LockManager类 2. 新建[[WebVC alloc]initWithUrl:]视图类,并自行显示。 3. url传人您的地图地址。 4. 配置plist蓝牙定位权限、实景相机使用权限,请自定义描述文字,示例: ``` NSLocationAlwaysUsageDescription 后台使用定位权限 NSLocationWhenInUseUsageDescription 扫描周边iBeacon需要配置定位权限(在Info.plist) NSLocationAlwaysAndWhenInUseUsageDescription 扫描周边iBeacon需要配置定位权限(IOS10需要) NSCameraUsageDescription 实景导航需要 ``` 5. 添加开锁库:TTLock.framework - 找到 Target -> 'General' -> 'Embedded Binaries', 添加上边拖入的framework。 - 找到 Target->Build Settings ->Enable Bitcode ,设置为 'NO'。 - 找到 Target->Build Phases -> Link Binary With Libraries ,添加CoreBluetooth.framework。 - 需要上传到App Store,需要在target -> Build Phases添加Run Script,复制以下代码并在XCode的Run Script下方+号添加Input Files(如本示例TTLock.framework在项目根目录直接填写$(SRCROOT)/TTLock.framework,因为提供的库是支持i386、x86_64 、armv7、 arm64的动态库,上传到App Store,需要去除i386、x86_64模拟器版本库,要不然会报错。) ``` APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}" # This script loops through the frameworks embedded in the application and # removes unused architectures. find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK do FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable) FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME" echo "Executable is $FRAMEWORK_EXECUTABLE_PATH" EXTRACTED_ARCHS=() for ARCH in $ARCHS do echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME" lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH" EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH") done echo "Merging extracted architectures: " lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}" rm "${EXTRACTED_ARCHS[@]}" echo "Replacing original executable with thinned version" rm "$FRAMEWORK_EXECUTABLE_PATH" mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH" done ``` 注意: - - 如果url地址不是https,请配置plist: ``` NSAppTransportSecurity NSAllowsArbitraryLoads ``` - 默认只支持定位设备UUID=@"FDA50693-A4E2-4FB1-AFCF-C6EB07647825"