-
Постов
396 -
Зарегистрирован
-
Посещение
-
Победитель дней
16
Активность репутации
-
-
Martifan отреагировална xenon54 в AdHoc
Суть в том, что Ad Hoc приложение и не должно заливаться через application loader. Ad hoc служит для распространение программы минуя app store. Вот статья об этом. Если ты делаешь приложение для AppStore и на данном этапе тебе нужно показать приложение заказчику, то можешь скомпилить для AppStore, и залить через application loader. После этого воспользоваться TestFlight для установки на его устройство. При этом приложению не нужно проходить модерацию и публикацию в магазине. Вот еще.
-
Martifan получил реакцию от Brovin Yaroslav в [iOS] Как убрать кнопку Done у виртуальной клавиатуры?
Спасибо Ярослав
-
Martifan отреагировална Brovin Yaroslav в [iOS] Как убрать кнопку Done у виртуальной клавиатуры?
Добрый вечер,
uses FMX.VirtualKEyboard, FMX.Platform; procedure TForm3.Button1Click(Sender: TObject); var Service: IFMXVirtualKeyboardToolbarService; begin if TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardToolbarService, Service) then Service.SetToolbarEnabled(False); end; -
Martifan отреагировална Дениска в Как корректно завершить приложение?
Я решил это 2 способами!!
Закрытие приложения по кнопке "Home":
нужно в "...\iOSDevice\Release\myapp.info.plist" после строки "<string>ResourceRules.plist</string>" добавить строку "<key>UIApplicationExitsOnSuspend</key><true/>".
Закрытие приложения по кнопке из приложения:
procedure TForm1.Button1Click(Sender: TObject);
begin Halt(0); //аварийное завершение end; Удачи =) -
Martifan отреагировална xenon54 в Публикация AdHoc пустого проекта не получается.
В общем суть в том что все новые проекты, которые появились после 1 февраля (не были ранее залиты в app store) должны иметь в своем составе обе версии ( armv7 + armv64).
Для того чтобы сделать это в XE8 нужно зайти в опции проекта -> Delphi Compiler -> Compiling -> Other options -> "Generate iOS universal binary file (armv7 + arm64)" и выставить это свойство в "true".
Попрошу заметить, что в проекте должен быть выбран 64 битный вариант, если выбрать 32 битный, то этого свойства в опциях проекта нет.
Осталось решить вопрос с ошибкой 90094
-
Martifan получил реакцию от Ra72 в [iOS] Приложение запускается на iOS Simulator и тут же закрывается.
может попробовать 30221_ios_8_simulator_hotfix_beta_for_xe8
http://cc.embarcadero.com/Item/30221
-
Martifan отреагировална Andrey Efimov в Как задать название приложения на любом языке?
http://delphifmandroid.blogspot.ru/2014/02/delphi-xe5-project-options-version.html, параметр "label"
-
Martifan получил реакцию от zairkz в [Android] Как свернуть приложение?
первым способом переводить тебя сразу на рабочем столе то есть тебя выкидывает из меню и на главном форме переключается о твоя приложения сворачивается а вторым способом тебя не выкидывает никуда проста сворачивает приложения
-
Martifan получил реакцию от MrAnderson в Получить голос из микрофона потоками
Доброго времени сутки
недавно для себя открыл что можно из микрофона получить данные потоками:
Uses ..., Androidapi.JNI.Media; procedure TForm1.Button1Click(Sender: TObject); var bufferSize: integer; buffer: TJavaArray<Byte>; M: TMemoryStream; begin audioRecord := TJAudioRecord.JavaClass.init(TJMediaRecorder_AudioSource.JavaClass.MIC, 44100, TJAudioFormat.JavaClass.CHANNEL_IN_MONO, TJAudioFormat.JavaClass.ENCODING_PCM_16BIT, 44100 * 2); (audioRecord as JAudioRecord).startRecording; buffer := TJavaArray<Byte>.Create(8820); (audioRecord as JAudioRecord).read(buffer, 0, 8820); (audioRecord as JAudioRecord).stop; audioRecord.release; buffer заполняется данными я проверил все работает (можно код прописать чтобы этот buffer проигрывал)
audioRecord := TJAudioRecord.JavaClass.init(TJMediaRecorder_AudioSource.JavaClass.MIC, 44100, TJAudioFormat.JavaClass.CHANNEL_IN_MONO, TJAudioFormat.JavaClass.ENCODING_PCM_16BIT, 44100 * 2); <--- как мне кажется здесь видно что это формат Wave
я пытаюсь передать это все серверу:
IdUDPClient1.SendBuffer(IdUDPClient1.Host, IdUDPClient1.Port, RawToBytes(buffer, buffer.Length)); сервер запущен на Windows но не получается я слышу только пикание
Вопрос:
как мне передать этот поток серверу (среды Windows) и как его проигрывать на сервере, может у кого есть опыт работы с этом сфере или какой нибудь документация имеется или какой нибудь предложение есть как все это сделать все совете и предложении очень важен
Заранее спасибо согласитесь интересно использовать микрофон так и не дожидая пока он создаст файл
всем удачи
-
Martifan отреагировална xenon54 в [iOS] Запуск
Для любой компиляции IOS проекта нужна Mac OS. Естественно на трекерах можно найти образ MacOs для WM.
-
Martifan отреагировална AngryOwl в Диалог-окна в 4.4.x стиле (Android)
По тексту, не с начала
З.Ы. Хотя это не лучший вариант. Сейчас сам занимаюсь вопросом локализации диалогов...
-
Martifan отреагировална AngryOwl в Диалог-окна в 4.4.x стиле (Android)
Если я Вас правильно понял, то:
- нужно создать файлик style.xml
- содержимое файла должно быть типа
<resources> <style name="MyTheme.NoTitleBar.CustomBackground" parent="@android:Theme.Holo"> <item name="android:windowBackground">@drawable/splash_centered</item> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">false</item> </style> </resources> где в Вашем случае главное - @android:Theme.Holo
- далее этот файл (style.xml) надо задеплоить
Вот. Думаю это то что Вам нужно было.
Остальные параметры - на Ваше усмотрение.
-
Martifan отреагировална AngryOwl в Передача изображения в потоке
function SaveBitmapToStream(const AStream: TStream; const Bitmap: TBitmap; const Extension: string; SaveParams: PBitmapCodecSaveParams = nil): Boolean; var surf: TBitmapSurface; begin Result := False; surf:= TBitmapSurface.Create; surf.Assign(Bitmap); try Result := TBitmapCodecManager.SaveToStream(AStream, surf, Extension, SaveParams); finally surf.Free; end; end; ну и вызывать типа так:
var tmpBitmap : FMX.Graphics.TBitmap; SaveParams : FMX.Graphics.TBitmapCodecSaveParams; Stream : TMemoryStream; // ..... tmpBitmap := TBitmap.Create; // .............. Stream := TMemoryStream.Create; try SaveParams.Quality := 85; SaveBitmapToStream(Stream, tmpBitmap, '.jpg', @SaveParams); Stream.Position := 0; // .................... // .................... finally FreeAndNil(Stream); end; -
Martifan получил реакцию от Ingalime в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
Martifan получил реакцию от xenon54 в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
Martifan получил реакцию от Brovin Yaroslav в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
Martifan получил реакцию от Alex7wrt в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
Martifan получил реакцию от Kitty в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
Martifan отреагировална Andrey Efimov в [Android] Как свернуть приложение?
Вот так:
uses Androidapi.JNI.GraphicsContentViewText, Androidapi.Helpers; procedure TForm2.Button1Click(Sender: TObject); var Intent: JIntent; begin Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_MAIN); Intent.addCategory(TJIntent.JavaClass.CATEGORY_HOME); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); SharedActivity.startActivity(Intent); end; но на 4.4 поведение немного другое... (Выскакивает табличка с выбором лаунчера). Хотя не известно на всех устройствах так или только у меня...
В справке написано, что должен открываться домашний экран, по всей видимости, тем, у кого стоит несколько Лаунчеров даётся выбор.
-
-
Martifan получил реакцию от Letter в Запрет ввода определенных символов в TEdit
если правильно понял вам нужна это: в FireMonkey и в Android свойстве TEdit добавлена FilterChar и выглядит это так: procedure TForm1.FormCreate(Sender: TObject); begin Edit1.FilterChar:= '0123456789'; end; -
Martifan получил реакцию от GASCHE в Запрет ввода определенных символов в TEdit
если правильно понял вам нужна это: в FireMonkey и в Android свойстве TEdit добавлена FilterChar и выглядит это так: procedure TForm1.FormCreate(Sender: TObject); begin Edit1.FilterChar:= '0123456789'; end; -
Martifan отреагировална xenon54 в [TPopupBox] Как программно открыть выпадающий список в TPopupBox?
type TpopupBox_helper = class helper for TPopupBox procedure ShowPopup; end; procedure TForm1.Button1Click(Sender: TObject); begin PopupBox1.Items.Add('Item1'); PopupBox1.Items.Add('Item2'); PopupBox1.Items.Add('Item3'); PopupBox1.Items.Add('Item4'); PopupBox1.ShowPopup; end; { TpopupBox_helper } procedure TpopupBox_helper.ShowPopup; begin self.click; end; -
Martifan получил реакцию от AngryOwl в [FGX] Предложения о разработке компонентов
все правильно сказано работать не означает кинуть на форме кнопку и при нажатие выдавал сообщения: "Hello World!!!"