【问题标题】:installing carto SDK安装carto SDK
【发布时间】:2019-01-14 15:21:27
【问题描述】:

我尝试将 carto 安装到 Android Studio,但出现很多错误。我按照 carto 网站 (https://carto.com/developers/mobile-sdk/guides/getting-started/#tab-java) 的说明进行操作。

package com.example.vassilis.goldman_carto;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import com.carto.layers.CartoBaseMapStyle;
import com.carto.layers.CartoOnlineVectorTileLayer;
import com.carto.ui.MapView;

public class MainActivity extends AppCompatActivity {

    // make sure you replace the String value with the one from carto.com mobile app registration !
    final String LICENSE = "insert license key - hello stackoverflow";

    private MapView mapView;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // Register the license so that CARTO online services can be used
        MapView.registerLicense(LICENSE);

        // Get 'mapView' object from the application layout
        mapView = (MapView) this.findViewById(R.id.mapView);

        // Add basemap layer to mapView
        CartoOnlineVectorTileLayer baseLayer = new CartoOnlineVectorTileLayer(CartoBaseMapStyle.CARTO_BASEMAP_STYLE_VOYAGER);
        mapView.getLayers().add(baseLayer);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

}

错误:类 MapView 中的 registerLicense 方法不能应用于给定类型;必需:字符串,找到上下文: 字符串原因:实际参数列表和形式参数列表长度不同

【问题讨论】:

  • 您似乎没有任何 Android 经验。不要从实际项目开始,先做一些教程
  • 不,我没有,但谁能解释一下为什么 -2?
  • 只是因为你没有尝试自己解决问题。
  • 请将代码、错误和数据添加为文本 (using code formatting),而不是图像。图片:A)不允许我们复制粘贴代码/错误/数据进行测试; B) 不允许根据代码/错误/数据内容进行搜索;和many more reasons。一般来说,文本格式的代码/错误/数据>>>>作为图像的代码/错误/数据>>没有。只有在除了代码格式的文本之外,如果图像添加了仅由文本代码/错误/数据无法传达的重要内容,则应使用图像。

标签: android cartodb


【解决方案1】:

您的控制台中有 3 个错误。

第一个:

onCreate 已经定义

你有两次onCreate方法,删除第二次。

第二个:

方法 registerLicense 不能应用于给定的参数,需要字符串和上下文,找到字符串

看起来MapView.registerLicense 应该接受一个字符串和一个上下文,即MapView.registerLicense(LICENSE, this);

第三:

找不到符号变量 main

最后你使用了R.layout.main,而它应该是R.layout.activity_main(你的XML布局文件的名称)。


专业提示 - 下方有红线的任何内容都是错误的,在您修复错误并使红线消失之前,您的应用将无法工作/运行/编译。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多