2015-04-23 2 views
0

Я работаю над расширением сафари и хочу опубликовать расширение на своем веб-сайте. Я использую следующий код, так что пользователь имеет возможность загрузить файл .safarixtz, а затем установить его: -Расширение Safari доступно через веб-сервер

<%String filename = "<safariextz file path>" ;   
response.setContentType("application/octet-stream safariextz"); 

String disHeader = "Attachment;filename=test-safari.safariextz"; 
response.setHeader("Content-Disposition", disHeader); 

// transfer the file byte-by-byte to the response object 
File fileToDownload = new File(filename); 
response.setContentLength((int) fileToDownload.length()); 
FileInputStream fileInputStream = new FileInputStream(fileToDownload); 
int i = 0; 
while ((i = fileInputStream.read()) != -1) { 
    out.write(i); 
} 
fileInputStream.close();%> 

Но результирующий файл не может установить на сафари браузер и метания ошибки: -

Safari не удается установить это расширение Произошла ошибка при установке этого расширения

Я также хочу, чтобы установка началась, когда пользователь нажмет на ссылку Установить, как в галерее apple.

Thanks

+1

Какой язык или платформа вы используете для своего веб-сервера? –

+0

Возможно, ваш код загрузки не загружает все байты правильно. Вы пытались сравнить контрольные суммы? – dimitrirostavo

+0

Язык выглядит как [JSP] (http://www.tutorialspoint.com/jsp/jsp_syntax.htm) @StevenSchobert – MauroPerez

ответ

0

Это потому, что у вашего расширения есть ошибка. можете ли вы поделиться своим расширением, чтобы я мог помочь вам проверить его.

также не используйте этот код для обслуживания файла расширения. вам это не нужно.

все, что вам нужно сделать, это - загрузить расширение на общественный файл сервера, и вы получите URL этого - изменить ваш конфигурационный файл сервер (Apache или какой-либо другой сервер HTTP может быть легко настроен с добавлением строка в файле конфигурации), чтобы hanlde файл .safariextz

все готово.

сначала убедитесь, что у вас нет ошибки в вашем расширении.