0

我已将 WURFL 1.6.0 与 Zend 集成,一切顺利,它检测到桌面,但在 Android 的情况下,我收到此错误。在深入挖掘时,我发现我的 dir data/wurfl/cache 没有加载任何数据已经给了它 777 许可,但它仍然没有工作。

[25-Jun-2015 09:39:09] PHP Fatal error: 
 Uncaught exception 'Exception' with message 'There is no device with ID [generic_android_ver4_4] in the loaded WURFL Data' in /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/CustomDeviceRepository.php:108
Stack trace:
#0 /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/CustomDeviceRepository.php(211): WURFL_CustomDeviceRepository->getDevice('generic_android...')
#1 /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/WURFLService.php(146): WURFL_CustomDeviceRepository->getDeviceHierarchy('generic_android...')
#2 /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/WURFLService.php(62): WURFL_WURFLService->getWrappedDevice('generic_android...', Object(WURFL_Request_GenericRequest))
#3 /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/WURFLManager.php(90): WURFL_WURFLService->getDeviceForRequest(Object(WURFL_Request_GenericRequest))
#4 /var/www/vhosts/mobiletocash.co.uk/httpdocs/library in /var/www/vhosts/mobiletocash.co.uk/httpdocs/library/wurfl-php-1.6.0.1/WURFL/CustomDeviceRepository.php on line 108

$resourcesDir            = dirname(__FILE__) . '/../../data/wurfl/';

$wurfl['main-file']      = $resourcesDir  . 'wurfl.xml';
$wurfl['patches']        = array($resourcesDir . 'web_browsers_patch.xml');

$cache['provider']       = 'Null';
//
$persistence['provider'] = 'File';
$persistence['dir']      = $resourcesDir . '/cache/';


$configuration['wurfl']       = $wurfl;
$configuration['persistence'] = $persistence; 
$configuration['cache']       = $cache;

如果我给 $cache['provider'] = null; 它引发另一个异常。尝试使用 $persistence['provider'] = 'file'; 但没用

4

1 回答 1

0

据我所知,WURFL 文件似乎没有被正确加载(可能目录不可写)或已过期。您很可能需要删除持久性目录并重新加载 WURFL API。

于 2015-06-25T19:32:01.967 回答