• 0
Евгений Гайдук

Сохранение данных из Андроид устройства в сетевую папку.

Вопросы

Помогите решить проблему. Есть андроид-планшет, есть серверный ПК. Нужно данные, вводимые на планшете сохранить в сетевую папку на сервере. Может есть возможность подключить сетевой ресурс на андроид планшете, либо напрямую сохранять в сетевую папку.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

18 ответов на этот вопрос

  • 0

Никогда не пробовал, но

что если попробовать писать в файл по адресу \\servername\filename.txt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Тоже думал что должно получиться, но...  Выдает ошибку  Cannot create file.... Not a directory.

Изменено пользователем Евгений Гайдук

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Права на запись даны?
Читать по этому принципу удается?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Естественно, права на запись и чтение даны. При чтении та же ошибка только cannot open file... При работе из той же сети с планшета на Винде, ошибок нет никаких. И пишет и читает файл замечательно, но на андроид совсем другое дело. Нахрапом не получается. Видимо должен быть другой способ. Вот только какой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Авторизация при входе на сервер есть?
Возможно винда просто запомнила ваш логин/пароль и не требует его.
Попробуйте на андроид-девайсе запустить какойнить файловый менеджер (ES file manager например) и зайти на сервер. Авторизацию будет просить? Имхо, если админ не баклан - будет (ессно, при условии что вы делаете это в офисе а не дома))).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Попробую  авторизацию завтра. 

Если все же авторизацию запрашивает и не пускает именно из-за этого, то я уверен что ошибка выглядела бы немного иначе... А так она указывает что само построение запроса пути не верное. Кажется мы не туда роем...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

В Андроид нет встроенных средств работы по протоколу NetBIOS/NetBEUI. Вам придется реализовать его самостоятельно с нуля.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
1 минуту назад, Евгений Корепов сказал:

В Андроид нет встроенных средств работы по протоколу NetBIOS/NetBEUI. Вам придется реализовать его самостоятельно с нуля.

ОК. Я подозревал подобное. А как тогда возможно програмно передать файл на ПК?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Добавлю что есть десяток других, менее затратных способов выполнить вашу задачу. Начиная от загрузки по HTTP или FTP, заканчивая использованием облачных хранилищ. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
Только что, Евгений Корепов сказал:

Добавлю что есть десяток других, менее затратных способов выполнить вашу задачу. Начиная от загрузки по HTTP или FTP, заканчивая использованием облачных хранилищ. 

Все было бы хорошо, но у сети нет выхода на широкий интернет и на сервере развернуть HTTP врядли позволят. Уперся в стену. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
Только что, Евгений Гайдук сказал:

Все было бы хорошо, но у сети нет выхода на широкий интернет и на сервере развернуть HTTP врядли позволят. Уперся в стену. 

 

Давайте определимся что из себя представляет ваш "Серверный ПК". Операционная система? Если у вас к нему доступ? Можете ли вы управлять им по своему усмотрению?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Серверный ПК - виртуальная машина под управлением Windows Server 2012. Доступ к нему есть, но управление ограничено политикой невмешательства, то есть могу вносить минимальные изменения в фаловой структуре; Запрещено устанавливать какое-либо дополнительное ПО без муторной и долгой процедуры согласования. ☹️

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Можно по блюпуп, можно по tcp

Изменено пользователем wamaco

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Дропбокс на сервер, на андроид-девайс и ничего програмить не нужно 😃

 

Изменено пользователем Barbanel

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Вот, по моему мнению, самый просто и быстрый способ:

 Устанавливаете на сервере FTP сервер. К примеру SlimFTPd (http://www.whitsoftdev.com/slimftpd/), его можно запустить как сервис. Не забываете настроить папку, пользователя (с паролем) и остальное. Там все просто.

В своем приложении отправка файла на FTP сервер займет у вас несколько строчек:

  IdFTP:=TIdFTP.Create;
  IdFTP.Host:=Host;
  IdFTP.Username:=ALogin;
  IdFTP.Password:=APassword;
  IdFTP.Passive:=True;
  IdFTP.TransferType:=ftBinary;
  IdFTP.ReadTimeout:=ConstFTPTimeout;
  IdFTP.TransferTimeout:=ConstFTPTimeout;
  try
    IdFTP.Connect;
  except
    on E : Exception do
    begin
      Error:=True;
      ErrorMessage:=E.Message;        
    end;
  end;
  AFilePathLocal:='Путь к файлу который хотите отправить';
  AFilePathRemote:='/Download/';
  if TFile.Exists(AFilePathLocal) then
    try
      IdFTP.Put(AFilePathLocal, AFilePathRemote);
    except
      on E : Exception do
      begin
        Error:=True;
        ErrorMessage:=E.Message;        
      end;
    end;
  IdFTP.Disconnect;
  IdFTP.Free;

Вот как то так.

P.S. Не верно написал путь для отправки.

Исправил AFilePathRemote:='ftp://192.168.0.150/Download/'; на AFilePathRemote:='/Download/';

Изменено пользователем Евгений Корепов
Исправление кода

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
9 минут назад, Евгений Гайдук сказал:

Серверный ПК - виртуальная машина под управлением Windows Server 2012. Доступ к нему есть, но управление ограничено политикой невмешательства, то есть могу вносить минимальные изменения в фаловой структуре; Запрещено устанавливать какое-либо дополнительное ПО без муторной и долгой процедуры согласования. ☹️

 

В это операционке уже есть встроенный FTP сервер. Кривой, но работать будет. Включить его и настроить очень просто.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
3 минуты назад, Евгений Корепов сказал:

Устанавливаете на сервере FTP сервер.

Это был мой резервный вариант. Хотелось обойтись без дополнительных костылей, но видимо прийдется так. Теплилась надежда что я просто может чего не знаю и все таки передача файлов с Андроида на Винду - задача простая, а я что-то упустил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От Farhodjon
      Привет всем, я здес новинки. Нужна ваша помош как подклучит служба на delphi xe8 исзодник или видеоурок на delphi xe8 есть? Помагите пожвлуста очен надв мне это подклучени
    • От Alex Bakulin
      Создаю стандартное мобильное приложение, которое предлагает Delphi Berlin. Там есть обработчик кнопки Назад. Собственно у меня задача, после того, как человек перешел в какой-то из режимов приложения, на эту кнопку реагировать, а именно присваивать Key := 0 и делать Application.Terminate. Но это не срабатывает, пролистываются все экраны приложения до первого и только после этого идет выход...
      Возможно я что-то не так для Андроид использую. Как мне закрыть приложение по этой кнопке? 
    • От serg557
      День добрый!
      Ситуация такова:
      1. Загружаю вебстраничку в AnsiString - тут все отлично работает как на винде так и под андроид;
      2. Пытаюсь ее отпарсить с использованием стандартных методов AnsiString- .Pos(), .SubString(), .Delete(), - на винде все работает - на андроиде -нет.
       Вопрос в следующем - чем работать на с текстом - чтобы одинаково работало под андроидом?
       
    • От DirtyBorov
      За ранее прошу простить если не в ту ветку. Вопрос двоякий и анимация и жесты.
      Нужно реализовать анимацию, таким образом, что бы она постепенно останавливалась. Вот например есть 10 картинок, надо их пальцем прокручивать. Но так, чтоб они постепенно останавливались. Причем картинки небольшие, сразу на экране могут быть 3 картинки.  Как бы лента из картинок. Картинок может быть много 100+. Стоит ли копать в сторону анимации? Не будет ли тормозить на слабеньком телефоне?
      Посоветуйте куда копать - анимация, Box2D?
    • От Igor
      По умолчанию приложение написанное в Delphi XE6 Update 1 под Android устанавливается во внутреннюю память устройства, и насколько я понял не подлежит переносу.
       
      Можно ли установить приложение на SD карту или разблокировать возможность переноса на SD?
       
      Для установки на SD ориентировочно смотрю в сторону Project -> Version info (Android) -> package
      но там даже когда стандартный com.embarcadero.$(ModuleName) меняешь на $(ModuleName) уже что-то не так.
       
      Предполагаю, что может быть можно вписать что-то типо "/storage/sdcard0/com.embarcadero.$(ModuleName)", но точно не знаю, + ко всему вроде не везде на SD такой путь, и не везде есть вообще SD. Лучший вариант проверять есть ли SD и ставить на него, если есть, иначе во внутреннюю память или предоставлять выбор. Но как?
       
      Подскажите? Честно скажу, методом тыка не пробовал.
    • От SerhioUser
      Здравствуйте!
       
      Вопрос по Андроиду.
      Как из одного приложения (A) запустить инсталляцию apk другого приложения (Б) (желательно полностью в авто режиме), а потом из приложения (A) запустить приложение (Б)?
      Объясняю зачем: делается корпоративная программа, (работающая на нескольких планшетах), которая часто обновляется, и нужно написать агент, который должен в авто-режиме принимать apk по сети и обновлять приложение (Б).
      Пишу на C++ Builder XE6, Андроид 7.
       
      Спасибо.
    • От la_coste
      Доброго времени суток, в процессе изучения Delphi XE5 возник такой вопрос:
      Возможно ли открыть к примеру HTML страницу из файловой системы устройства в браузере по умолчанию??
      Заранее спасибо)
    • От Brovin Yaroslav
      Как в настройках среды RAD Studio XE5 указать, что проект нужно собирать с использованием другой версии Android OS?
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу