Принцип работы Push на разных ОС не отличается
если коротко, не обращаем внимание на OS и термины (для ознакомления прошу сюда)
Описание технологии GCM и APNs хорошо расписаны на хабре, гораздо более профессионально. Я уж точно ничего нового не внесу.
@Ingalime спасибо за вопросы)
1) Вот есть хорошее описание работы и терминов касательно APNs и GCM, тратить на это время и писать тоже самое не хотелось
2) Реализация серверной и клиентской части есть в статье
3) Что для этого нужно и как настроить есть в предыдущей статье
Laravel - это PHP фреймфорк, но выложил код на "чистом" PHP, чтобы каждый мог быстро интегрировать в свой проект, не привязываясь к фреймворкам
Тут есть два способа:
Работа с Deployment менеджером. Он довольно подробно описан на Embarcadero Doc Wiki: http://docwiki.embarcadero.com/RADStudio/XE5/en/Deployment_Manager
Работа через менеджер ресурсов и их получение через ResourceStream. Этот способ описал MyDelphiPw в сообщении выше тут.
1. Deployment Manager
Специальная настройка проекта, которая позволяет указать, какие файлы нужно включить в состав пакета (Андроид) или бандла (iOS). Суть его работы простая, вы указываете какие файлы с вашего компьютера нужно перенести на устройство (в какое место). А далее работаете с ними из приложения так, как при обычной работе с файлами под Windows.
На мобильных платформах нужно учесть специфику возможных местоположений файла. Пакет/Бандл (приложение) не допускает изменения внутренних файлов, потому что подписывается сертификатом. Поэтому теоретически при изменении файлов приложения, вы нарушаете целостность подписи. Именно по этому файлы внутри пакета/бандла доступны только на ЧТЕНИЕ.
Однако, мобильные платформы предлагают широкий круг специальных мест для хранения (временные папки, песочницы, документы, карточка памяти и тд) изменяемых файлов (например файл локальной базы данных, или настройки в ini файле и тд).
Описание всех вариантов местоположений с описанием путей есть в записе TPath (RTL): http://docwiki.embarcadero.com/RADStudio/XE5/en/Standard_RTL_Path_Functions_across_the_Supported_Target_Platforms.
Общие действия для использования менеджера развертывания такие:
1. Открываем менеджер развертывания: Системное Меню -> Project -> Deployment.
2. Выбираем в верхнем выпадающем меню платформу и конфигурацию сборки.
3. Нажимаем кнопку добавить файл и выбираем нужный файл.
4. Указываем местоположение файла, куда он должен поместиться после развертывания приложения на устройстве. Тут есть особенность, если файл нужен только на чтение, то пути менять не надо. Если возможна ситуация, когда файл может быт изменен, то файл нужно поместить под iOS в Startup\Documents\ (регистр важен)
Под Андроид в assets\internal (регистр важен) - для внутреннего доступа из пакета приложения или assets - для внешнего доступа
5. Получаем пути к расположению файлов:
Под iOS:
TPath.Combine(TPath.GetDocumentsPath, 'filename')
Под Андроид:
TPath.Combine(TPath.GetDocumentsPath, 'filename') { Внутренний доступ}
TPath.Combine(TPath.GetSharedDocumentsPath, 'filename') { Внешний доступ }
Полезные ссылки
Подробное руководство по добавлению файлов для iOS: http://docwiki.embarcadero.com/RADStudio/XE5/en/Creating_an_iOS_App#Loading_and_Deploying_Files
Подробное руководство по добавлению файлов для Android: http://docwiki.embarcadero.com/RADStudio/XE5/en/Creating_an_Android_App#Loading_and_Deploying_Files
Если еще актуально:
Установил компонент SpeechRecognition1 (во вложении)
Накидываю на форму компонент TSpeechRecognition из панели компонентов
в нем имеются свойства(у меня следующие):
AlwaysGuesses: true;
Language: ru-RU;
Prompt: Пожалуйста скажите ЧЕ нибудь!
Объявите глобально FSpeech: TStrings; является своего рода посредником передачи данных иначе все глючит)
Теперь при необходимости вызывайте SpeechRecognition1.ListenFor(FSpeech); появится окно обработки голоса
Далее в компоненте обработчике OnRecognitionEx прописываем куда распознанный текст должен попасть
Edit1.Text := Guesses[0];
Ссылка на источник http://delphi.org/2014/10/voice-enable-your-android-apps/ но кажись сейчас можно скачать только Триал версию, а во вложении полная версия (да простят меня Боги!), демки там есть, а также примеры для перевода текста в голос.
Speech.zip