Leaflet: مربع الخريطة لا يتم تحميله في عرض ويب iOS

تم إنشاؤها على ٢٣ نوفمبر ٢٠١٦  ·  3تعليقات  ·  مصدر: Leaflet/Leaflet

أهلا،

أنا باستخدام رد فعل الأم.
هذا هو ملف map.html الخاص بي:

<html>
  <head>
    <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" />
    <script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
  </head>
  <body>
    <div id="map" style="height: 100%;">
    </div>
    <script>
        var osmUrl = 'https://{s}.tile.osm.org/{z}/{x}/{y}.png',
        osmAttrib = '&copy; <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors',
        osm = L.tileLayer(osmUrl, {
              maxZoom: 18,
              attribution: osmAttrib
            });
        var map = L.map('map').setView([19.04469, 72.9258], 12);
        map.addLayer(osm);
    </script>
  </body>
</html>

وأنا أقوم بتحميل map.html في عرض الويب:

import React, { Component } from 'react';
import {
  WebView
} from 'react-native';

export default class MapScreen extends Component {
  render() {
    return (
      <WebView style={{flex:1}} javaScriptEnabled={true} source={require('./map.html')}/>
    );
  }
}

لكن البلاط لا يتم تحميله في ios simulator ، ولكنه جيد في محاكي android.
هذا ما أراه في محاكي iOS:
simulator screen shot nov 23 2016 11 31 41 pm

التعليق الأكثر فائدة

شكرا لك على الرد.

كنت بسبب طلبات http ، وعندما قمت بتعطيل ATS (App Transport Security) ، فإنه يعمل بشكل جيد ويتم تحميل المربعات. ولكن كما تعلم ، فإن تعطيل ATS ليس هو الحل.

وفقًا لإجابة @ F1LT3R في إصدار Streaming Leaflet Tiles عبر HTTPS / SSL # 3186 ، يمكننا استخدام https لتحميل البلاط وتغيير osm لفتح خريطة الشارع في عنوان url للبلاط ( http://{s}.tile.osm.org/{z}/{x}/{y}.png -> https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png ).

ال 3 كومينتر

مرحبًا ، تتضمن هذه المشكلة React و WebView ومحاكي iOS. لا يعمل فريق Leaflet مع هذه الأدوات أو يدعمها ، لذلك أخشى أنه لا يمكننا مساعدتك في هذه الأداة.

بالنظر إلى المثال البسيط للغاية ، من الواضح أن المشكلة لا تكمن في Leaflet نفسه ، بل في كيفية تفاعلها مع أحد المكونات الأخرى.

نحن منفتحون لإجراء تغييرات على Leaflet لجعله يعمل بشكل أفضل مع الأدوات الأخرى ، ولكن للأسف لا نملك الموارد اللازمة لحل المشكلات في أطر عمل أو أدوات أخرى.

إذا كان بإمكانك تقديم مثال فاشل باستخدام Leaflet و JavaScript و HTML / CSS فقط ، فنحن بالطبع منفتحون جدًا للعمل مع هذا.

شكرا لك على الرد.

كنت بسبب طلبات http ، وعندما قمت بتعطيل ATS (App Transport Security) ، فإنه يعمل بشكل جيد ويتم تحميل المربعات. ولكن كما تعلم ، فإن تعطيل ATS ليس هو الحل.

وفقًا لإجابة @ F1LT3R في إصدار Streaming Leaflet Tiles عبر HTTPS / SSL # 3186 ، يمكننا استخدام https لتحميل البلاط وتغيير osm لفتح خريطة الشارع في عنوان url للبلاط ( http://{s}.tile.osm.org/{z}/{x}/{y}.png -> https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png ).

arminghm ، شكرًا جزيلاً ، إنه يعمل معي :)

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

viswaug picture viswaug  ·  4تعليقات

edmsgists picture edmsgists  ·  3تعليقات

zdila picture zdila  ·  3تعليقات

piehei picture piehei  ·  3تعليقات

onethread picture onethread  ·  3تعليقات