Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Доступ к ФС телефона Nokia, Не получаю разрешения 
:(
    Опции темы
Bchgroup
Дата 7.8.2009, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 7.7.2009

Репутация: нет
Всего: нет



Соответсвенно не вылетает запроса на запись к фс на телефонах Nokia N72, 6500c, N95, 6290.
При попытке записать выдает Access denied.
Метод listRoots() при этом отлично выполняется и запрос на чтение выдает.

При этом Opera Mini при загрузке файла на этих же телефонах предупреждение на запись выдает!

Эксперементировал с Connector.open(,Connector.READ,WRITE,READ_WRITE) 
если это указывать вообще вылетает Illegal state или что-то в этом духе.

Никто не сталкивался?

Код

public synchronized void run(){
      int ErrString;
      do {
       for(int i=0;i<CurrentDownloadId;i++)
       {
           if(Downloads[i]!=null)
           {
               if(Downloads[i].Status==DownloadDesc.READYTODOWNLOAD || Downloads[i].Status==DownloadDesc.DOWNLOADING  )
               {
                  try{
                     ErrString=0;
                   long StartFrom=0;
                   ErrString=1;
                   FileConnection fc=(FileConnection)Connector.open("file://"+Downloads[i].SaveFile);
                   ErrString=2;
                   if(!fc.exists())
                      {
                       fc.create();
                       ErrString=3;
                      }
                   else                   
                       StartFrom=fc.fileSize();
                   ErrString=4;
                   HttpConnection hc=(HttpConnection)Connector.open(Downloads[i].Url);
                   ErrString=5;
                   hc.setRequestMethod("GET");
                   hc.setRequestProperty("Connection", "close");
                   hc.setRequestProperty("User-agent", "waptorrent/"+System.getProperty("microedition.platform")+"/J2ME/01beta");
                   hc.setRequestProperty("Range", "bytes="+StartFrom+"-");
                   int ResponseCode=hc.getResponseCode();
                   String ResponseMessage=hc.getResponseMessage();
                   Downloads[i].ByteSize=Long.parseLong(hc.getHeaderField("Content-Length"))+StartFrom;
                   InputStream is = hc.openInputStream();
                   OutputStream os = fc.openOutputStream();
                   int ch;
                   long BytesRead=0;
                   Downloads[i].Status=DownloadDesc.DOWNLOADING;

                   while ((ch = is.read()) != -1)
                      {
                       BytesRead++;
                       os.write(ch);
                       if(BytesRead%4096==0)
                          { os.flush();
                            Downloads[i].PercentComplete=(StartFrom+BytesRead)/(float)Downloads[i].ByteSize*100;
                          }
                       }
                   Downloads[i].Status=DownloadDesc.COMPLETE;
                   os.close();
                   fc.close();
                   is.close();
                   hc.close();
                  }
                  catch(Exception e)
                  {
                     Downloads[i].Status=DownloadDesc.ERROR;
                     Downloads[i].Errors=e.getMessage();
                     e.printStackTrace();
                  }
               }
           }
       }
       try{
       Thread.sleep(1000);
       }
       catch(Exception e)
       {
           e.printStackTrace();
       }
      } while(true);



Это сообщение отредактировал(а) Bchgroup - 7.8.2009, 10:08
PM MAIL   Вверх
W0LF
Дата 7.8.2009, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


alexander lonsky
***


Профиль
Группа: Участник
Сообщений: 1164
Регистрация: 9.2.2006
Где: Ukraine.Dnepropet rovsk

Репутация: 19
Всего: 20



MyMidlet > Application Access > Data Access > Read User Data.

ask every time, ask first time only, always allowed

Добавлено через 7 минут и 15 секунд
а еще рассказывают что если фон залочен под оператора то может ваще не быть доступа.
Цитата

Your phone is running firmware which is branded and customized for an operator. It is still made by Nokia.

You do not have file access on 3 mobile uk phones, even if you sign with a valid trusted 3rd party certificate. This is correct.


Добавлено через 10 минут и 30 секунд
и еще
Цитата

Some operators (like AT&T Wireless, T-Mobile U.S. and Hutchinson 3G) have a little different API access rights on their phones and unsigned MIDlets might not have file system access at all (I understood from your message that only Not allowed is available for file access in the midlet application settings)



--------------------
iOS developer
PM MAIL WWW Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0686 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.