Android CacheResponse: получить путь к файлу?
Есть ли способ получить путь к файлу Android CacheResponse
? Конечно, можно получить InputStream
, но в тех случаях, когда некоторый API (например, код NDK) ожидает путь к файлу, который не помогает. Конечно, можно использовать этот поток для создания другого файла, но это больше времени и пространства.
2 ответа
Я сам столкнулся с этим.
На Android (протестировано на Jellybean) путь к файлу кэша - это сумма UDRI-суммы в нижнем регистре URI, за которой следует
0,1
Так для URL Android CacheResponse: получить путь к файлу? следующие файлы существуют в кеш-директории.
- bf9b8f9a33062f084a70cba99dc79afe.0 - содержит заголовки ответа HTTP
- bf9b8f9a33062f084a70cba99dc79afe.1 - содержит тело ответа HTTP
Итак, обдумывая это немного дальше (и ковыряясь в коде), я должен предположить, что заголовки ответа и т. Д. Находятся в одном файле, а не только в теле ответа. Если это так, то явно не будет пути к файлу, который можно было бы указать, это просто тело ответа. Было бы полезно подтверждение - как и указатели на альтернативные библиотеки HTTP-кэширования, которые могли бы помочь здесь.