CacheManager.getCacheFileBaseDir () всегда возвращает ноль - PullRequest
2 голосов
/ 16 марта 2010

Я пытался использовать CacheManager для кэширования некоторых http запросы, но каждый раз это не удавалось с исключением нулевого указателя. После я думаю, что выяснил почему:

CacheManager.getCacheFileBaseDir() всегда возвращает ноль, поэтому, когда я пытаюсь использовать CacheManager.getCacheFile() или CacheManager.saveCacheFile() они терпят неудачу.

CacheManager.cacheDisabled() возвращает false.

Я не создал раздел кеша через диспетчер AVD, поэтому я подумал проблема лежит там. Но после создания раздела кеша getCacheFile() все еще возвращает ноль:

03-16 00:25:16.321: ERROR/AndroidRuntime(296): Caused by: java.lang.NullPointerException
03-16 00:25:16.321: ERROR/AndroidRuntime(296): at android.webkit.CacheManager.getCacheFile(CacheManager.java:296)

В чем может быть проблема? У меня есть код, размещенный здесь: http://pastebin.com/eaJwfXEK Но это немного грязно, потому что я пробовал кучу вещей.

Почему CacheManager.getCacheFileBaseDir() возвращает ноль, а не объект File?

Ответы [ 2 ]

1 голос
/ 16 июня 2010

Может быть связано с http://code.google.com/p/android/issues/detail?id=7222: CacheManager можно использовать только для WebView. Облом. Я продолжу расследование.

0 голосов
/ 26 марта 2010

кажется, есть метод init (Context context) для вызова но при просмотре исходного кода этот метод не является общедоступным Я не могу вызвать этот метод из моего кода.

Я всегда: java.lang.NullPointerException на android.webkit.CacheManager.getCacheFile (CacheManager.java:295)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...