【Android 腾讯舆图】腾讯舆图开发记录 ① ( 舆图底子显示 | 创建应用和申 ...

打印 上一主题 下一主题

主题 844|帖子 844|积分 2532

参考 腾讯官方文档 【腾讯位置服务 - Android舆图SDK】 进行开发 ;




一、创建应用和申请key




1、创建应用


进入 腾讯位置服务 控制台页面 : https://lbs.qq.com/dev/console/home ,

点击左侧的 " 应用管理 / 我的应用 " 面板 , 进入后 , 点击右上角的 " 创建应用 " 按钮 ,

设置 创建应用 的 名称 和 范例 ,


2、申请 key


创建应用后 , 还须要申请 Key , 点击下图中 赤色矩形框 中的 " 添加 Key " 按钮即可 ,

在 下图的页面中 , 输入 key 名称 , 选择 SDK 选项 , 在下面的输入框中 , 输入 Android 包名 ;

创建 key 成功后 , 弹出如下对话框 :

点击 " 查察我的配额 " 按钮 , 可以查察 账户的额度 , 坐标转换 10000 是不敷用的 , 之后须要升级到商务版本 ;

下面的 赤色矩形框 中就是本次生成的 Key ;





二、配置应用




1、配置长途依靠库


腾讯提供了两种导入依靠库的方式 :


  • 手动导入 本地依靠库
  • 从 Maven 堆栈下载依靠库
这里选择从 Maven 堆栈长途下载依靠库 ;

底子配置


在 Module 下的 build.gradle 构建脚本中 的 配置
  1. dependencies {
  2.     implementation 'com.tencent.map:tencent-map-vector-sdk:5.4.1'
  3. }
复制代码
腾讯舆图的 版本号 可参考 最新版本号参考:https://lbs.qq.com/mobile/androidMapSDK/download/3dDownload 网址 , 最新的依靠库版本号是 5.4.1 ;

完整配置


假如想要利用 腾讯舆图 的 完整功能 , 推荐配置如下依靠库 :
  1. dependencies {
  2.         // JSON 字符串解析库 ( 可不用 )
  3.     implementation 'com.google.code.gson:gson:2.8.5'
  4.     // Android 权限申请库 ( 可不用 )
  5.     implementation 'pub.devrel:easypermissions:2.0.1'
  6.         // 腾讯地图 依赖库
  7.     implementation 'com.tencent.map:tencent-map-vector-sdk:5.4.1'
  8.     // 腾讯地图组件库 , 可实现 小车平移 / 点聚合 等组件功能
  9.     implementation 'com.tencent.map:sdk-utilities:1.0.9'
  10.     // 腾讯位置服务 定位依赖库
  11.     implementation 'com.tencent.map.geolocation:TencentLocationSdk-openplatform:7.5.3.2'
  12. }
复制代码
假如依靠库下载出现问题 , 则配置如下 Maven 堆栈 :
  1. allprojects {
  2.     repositories {
  3.         maven { url "https://mirrors.tencent.com/repository/maven/tencent_public/" }
  4.         maven { url "https://mirrors.tencent.com/repository/maven/tencent_public_snapshots" }
  5.         maven{ url "https://oss.sonatype.org/content/groups/public" }
  6.             maven { url "http://maven.aliyun.com/nexus/content/groups/public" }
  7.         google()
  8.         mavenCentral()
  9.         jcenter()
  10.     }
  11. }
复制代码

2、配置腾讯舆图 Key


将上一个章节申请的 Key 拷贝下来 , 配置到 AndroidManifest.xml 中的 application 标签中 , 配置内容如下 :
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3.     xmlns:tools="http://schemas.android.com/tools">
  4.     <application>
  5.         <!-- 腾讯地图 Key -->
  6.         <meta-data
  7.             android:name="TencentMapSDK"
  8.             android:value="PH7BZ-PEMC5-XXXXX-ITJJS-XXXXX-SHFWU" />
  9.     </application>
  10. </manifest>
复制代码
在 application 标签中配置 如下内容 :
  1.         <!-- 腾讯地图 Key -->
  2.         <meta-data
  3.             android:name="TencentMapSDK"
  4.             android:value="PH7BZ-PEMC5-XXXXX-ITJJS-XXXXX-SHFWU" />
复制代码




三、舆图开发




1、同意隐私协议


在进入舆图界面之前 , 调用一次 下面的方法 , 设置 用户已同意隐私协议 , 否则无法利用 SDK , 发起给用户弹出提示框让用户选择 , 这里恣意调用一下即可 ;
  1. TencentMapInitializer.setAgreePrivacy(true);
复制代码

2、布局文件


在布局文件中 , 推荐利用该 SupportMapFragment 作为舆图的载体 , 该类中已经设置了 MapView 的 维护 操作 , 不须要本技艺动维护 MapView 的生命周期 ;
  1.         <fragment
  2.             android:id="@+id/map_frag"
  3.             class="com.tencent.tencentmap.mapsdk.maps.SupportMapFragment"
  4.             android:layout_width="match_parent"
  5.             android:layout_height="wrap_content" />
复制代码
假如想要更细力度的控制 , 发起自己界说 SupportMapFragment 类 , 将 com.tencent.tencentmap.mapsdk.maps.SupportMapFragment 拷贝到自己的应用中进行界说 ;


3、舆图显示 Activity 类设置


Map 的基本显示 参考 腾讯舆图 官方 示例代码中的 如下类 :
  1. import androidx.appcompat.app.AppCompatActivity;
  2. import android.os.Bundle;
  3. import androidx.fragment.app.FragmentManager;
  4. import com.tencent.map.vector.demo.R;
  5. import com.tencent.tencentmap.mapsdk.maps.CameraUpdate;
  6. import com.tencent.tencentmap.mapsdk.maps.CameraUpdateFactory;
  7. import com.tencent.tencentmap.mapsdk.maps.SupportMapFragment;
  8. import com.tencent.tencentmap.mapsdk.maps.TencentMap;
  9. import com.tencent.tencentmap.mapsdk.maps.UiSettings;
  10. import com.tencent.tencentmap.mapsdk.maps.model.CameraPosition;
  11. import com.tencent.tencentmap.mapsdk.maps.model.LatLng;
  12. public class SupportMapFragmentActivity extends AppCompatActivity {
  13.     /**
  14.      * SDK提供了SupportMapFragment这个类来加载地图,这个类的方便之处就在于不用手动管理内存
  15.      */
  16.     private FragmentManager fm;
  17.     protected TencentMap tencentMap;
  18.     private SupportMapFragment supportMapFragment;
  19.     protected UiSettings mapUiSettings;
  20.     @Override
  21.     protected void onCreate(Bundle savedInstanceState) {
  22.         super.onCreate(savedInstanceState);
  23.         setContentView(R.layout.activity_support_map_fragment);
  24.         //创建tencentMap地图对象,可以完成对地图的几乎所有操作
  25.         fm = getSupportFragmentManager();
  26.         supportMapFragment = (SupportMapFragment) fm.findFragmentById(R.id.map_frag);
  27.         tencentMap = supportMapFragment.getMap();
  28.         mapUiSettings = tencentMap.getUiSettings();
  29.         //对地图操作类进行操作
  30.         CameraUpdate cameraSigma =
  31.                 CameraUpdateFactory.newCameraPosition(new CameraPosition(
  32.                         new LatLng(39.984066, 116.307548),
  33.                         15,
  34.                         0f,
  35.                         0f));
  36.         //移动地图
  37.         tencentMap.moveCamera(cameraSigma);
  38.     }
  39. }
复制代码

4、覆盖自界说舆图图片


下面的代码是设置 自界说的 舆图 , 覆盖到 腾讯舆图上 ;
LatLngBounds 设置的第一个坐标是 舆图东北角 坐标 , 第二个坐标是 舆图西南角坐标 ;
alpha 函数设置 覆盖图片 的透明度 , 一样平常设置为 1.0 完全不透明 即可 , 其设置范围是 0.0 - 1.0 , 0 表现完全透明 , 1 表现不透明 ;
  1. LatLngBounds lb = new LatLngBounds(
  2.                 new LatLng(40.045226, 116.280069),
  3.                 new LatLng(40.038918, 116.271873));
  4.         groundOverlayOptions = new GroundOverlayOptions()
  5.                 .bitmap(BitmapDescriptorFactory
  6.                         .fromAsset("groundoverlay.jpg"))
  7.                 .latLngBounds(lb)
  8.                 .alpha(1.0f);
  9.         groundOverlay = mTencentMap.addGroundOverlay(groundOverlayOptions);
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

八卦阵

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表