react-native在IOS上集成百度地图详解

5.继续添加依赖,CoreLocation.framework和QuartzCore.framework、OpenGLES.framework、SystemConfiguration.framework、CoreGraphics.framework、Security.framework、libsqlite3.0.tbd(xcode7以前为 libsqlite3.0.dylib)、CoreTelephony.framework 、libstdc++.6.0.9.tbd(xcode7以前为libstdc++.6.0.9.dylib)、CoreTelephony.framework

6.添加 BaiduMapAPI_Map.framework/Resources/mapapi.bundle

AppDelegate.m init 初始化

#import “RCTBaiduMapViewManager.h”

  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

[RCTBaiduMapViewManager initSDK:@“api key”];

}

build一下,看看是否配置成功

此时可能会报这个错误:

解决办法:

#import “RCTViewManager.h”

#import “RCTConvert+CoreLocation.h”

改成

#import <React/RCTViewManager.h>

#import <React/RCTConvert+CoreLocation.h>

到此为止,配置已经完成,我们可以在RN来玩一玩百度地图~

这里我们就参照官网的Demo给大家展示一下:

index.ios.js:

/**

  • Sample React Native App

  • https://github.com/facebook/react-native

  • @flow

*/

import React, { Component } from ‘react’;

import {

AppRegistry,

StyleSheet,

Text,

View

} from ‘react-native’;

import BaiduMapDemo from ‘./BaiduMapDemo’;

export default class BaiDuMapTest extends Component {

render() {

return (

);

}

}

const styles = StyleSheet.create({

container: {

flex: 1,

justifyContent: ‘center’,

alignItems: ‘center’,

backgroundColor: ‘#F5FCFF’,

},

welcome: {

fontSize: 20,

textAlign: ‘center’,

margin: 10,

},

instructions: {

textAlign: ‘center’,

color: ‘#333333’,

marginBottom: 5,

},

});

AppRegistry.registerComponent(‘BaiDuMapTest’, () => BaiDuMapTest);

BaiduMapDemo.js

/**

  • @author lovebing

*/

import React, {

Component,

PropTypes

} from ‘react’;

import {

MapView,

MapTypes,

Geolocation

} from ‘react-native-baidu-map’;

import {

Button,

AppRegistry,

StyleSheet,

Text,

View,

TouchableHighlight

} from ‘react-native’;

import Dimensions from ‘Dimensions’;

export default class BaiduMapDemo extends Component {

constructor() {

super();

this.state = {

mayType: MapTypes.NORMAL,

zoom: 15,

center: {

longitude: 113.981718,

latitude: 22.542449

},

trafficEnabled: false,

baiduHeatMapEnabled: false,

markers: [{

longitude: 113.981718,

latitude: 22.542449,

title: “Window of the world”

},{

longitude: 113.995516,

latitude: 22.537642,

title: “”

}]

};

}

componentDidMount() {

}

render() {

return (

<MapView

trafficEnabled={this.state.trafficEnabled}

baiduHeatMapEnabled={this.state.baiduHeatMapEnabled}

zoom={this.state.zoom}

mapType={this.state.mapType}

center={this.state.center}

marker={this.state.marker}

markers={this.state.markers}

style={styles.map}

onMarkerClick={(e) => {

console.warn(JSON.stringify(e));

}}

onMapClick={(e) => {

}}

<Button title=“Normal” onPress={() => {

this.setState({

mapType: MapTypes.NORMAL

});

}} />

<Button style={styles.btn} title=“Satellite” onPress={() => {

this.setState({

mapType: MapTypes.SATELLITE

});

}} />

<Button style={styles.btn} title=“Locate” onPress={() => {

console.warn(‘center’, this.state.center);

Geolocation.getCurrentPosition()

.then(data => {

console.warn(JSON.stringify(data));

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
减轻大家的负担。**

[外链图片转存中…(img-xCT8yctl-1715584524204)]

[外链图片转存中…(img-fqYHwsFW-1715584524204)]

[外链图片转存中…(img-G2lzsfps-1715584524205)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值