У меня проблема с разрешениями API 23 и, в частности, на разрешение на хранение: После того, как я попрошу пользователя получить разрешение и получить ответы, я вызываю метод setTileSource()
, но, как ни странно, я получаю голубую карту, как будто система плитки не имела доступа к хранилищу. Я могу создать папку между механизмом разрешений и инициализацией mapView без каких-либо проблем. Если я помещаю приложение в фоновом режиме и обратно на переднем плане, отображаются фрагменты.Поставщик плитки и права API 23
Я не видел ничего особенного в примере приложения, поэтому я не понимаю, что здесь происходит.
Есть идеи?
Просто догадка, но это звучит, как вам нужно вызвать какое-то 'методу Refresh' или что-то вроде того. Похоже, что текущий контекст не знает, что у него есть разрешения. После того, как вы выполните фоновое и предварительное развертывание приложения, оно обновится и имеет разрешения и выполняется правильно. – amza
@amza, конечно, но я делаю то же самое в обоих случаях, если мне нужно спросить разрешения, инициализация mapview просто задерживается. например, в следующий раз, когда я запустил приложение, я вижу, что у меня есть все разрешения, и я отлично отображаю карту. Итак, в первый раз, когда я запускаю приложение, я не понимаю, почему osmdroid не смог получить доступ к хранилищу для записи png, поскольку я могу написать в нем сам, прежде чем инициализировать mapview. – 2ndGAB