Перейти к содержанию
Fire Monkey от А до Я

rustam_d

Пользователи
  • Постов

    200
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2

Весь контент rustam_d

  1. вы говорите все ок...но походу не так )) выложите манифест файл андроида...он важен для пушей, точнее туда дописывать надо права отдельно
  2. Чистая установка. Установил Windows 7 x64, на неё поставил Delphi 10. Затем взял образ OS X Yosemite, установил туда xCode7 с SDK9. В результате всё, как и в прежних вариантах, та же ошибка. Вы проверяли данную конфигурацию. Работает она вообще? что то похожее Win8.1x64pro Yosemite 10.10(vmware) xcode6.4 PAserver16 XE8upd1 Login мака и конечно логин в xcode - девелопера(99$) сертификаты загружены за счет xcode Запускаю пасервер на маке без пароля(для чего инсталлятор под виндовс пока загадка) IOS Device32 работает норм
  3. второй день это еще не плохо )) кинву не юзаю, но кое где местами и среда может поднаср..ь, например переключение справа в билд кофигурэйшн часто желательно вручную мышой правой Активате делать при сменах режима(дебаг, релиз). Т.к. в опциях проекта переключение мышой не всегда корректно. После переключения вручную, проверьте в опциях проекта права (permissions) все ли стоят для Релиза. В манифесте права обязательно должны быть, ну раз в дебаге пашет, то наверно добавили корректно? Потом ключик подписи надеюсь корректен. Св-во формы Активате проверьте все ли у вас там красиво...покомменте и снова на тест...
  4. ... b.Bitmap.Assign(b.CreateBitmap('C:\Delphi\Images\GlyFX\glyFX\Icons\Aero\BMP\32x32\arrow_left_32_h.bmp')); ... vStream.WriteComponent(imgMain); 3. В вашем примере сохраняется и загружается вся коллекция + разная служебная информация, что не добавляет скорости. Лучше бы сохранять и загружать сами битмапы из Source.MultiResBitmap с использованием LoadFromFile, SaveToFile (как в первом примере). Это будут файлы родные png и они будут грузится системными API функциями с максимальной скоростью. А CreateBitmap использовать только при первой загрузке чтобы cмасштабировать и сконвертировать в png. Хотя и так тоже можно, но я бы не стал. что то не догнал...вот так просто взял и SaveToFile??? а для чего я тогна танцы с бубнами делаю с Destination ? Он что как то стороной проходит? Т.е. я беру и без всяких танцев с дестинанэйшн сразу Source.MultiResBitmap.LoadFromFile ? вы уверены? хм... А если вы про загрузку каждой картинки отдельно, то не вариант, мне же индексировать где то надо... да и если собьется индекс то уже и не те картинки на кнопках...причем на многих...неее, мне 300% уверенность нужна.
  5. xenon54 заработало, спс! отсутствовал FMX.PushNotification.iOS в разделе uses Why do I love you FMX!!!??? сколько крови он выпьет еще...я п'лачу...потерять неделю из-за такой ошибки...жесть ведь компилиться без него...ком-пи-ли-ться!!!...
  6. не работает, тот же access violation, сообщите пож. вашу конфигурацию, у вас XE8 ?
  7. Ярослав, может и мне поможете? Тема то актуальная вроде как...
  8. Неужели никто не юзает пуши в ИОС ? Подсобите пожалуйста...проект горит... APN сертификат завел, скачал его...но где его указать в делфи не пойму...гонсалес чегото не договорил...
  9. FeLDMARShaL прошу помощи, у меня этот код не работает в XE8, вылетает по access violation... начиная со строки ADeviceID := ... вот мой пост по ошибке http://fire-monkey.ru/topic/1697-push-soobscheniia-ios-kak-poluchit-token/?hl=push
  10. я свои типы не проталкиваю пока, но связка у меня норм работает...ниже мой код, может вам и сгодиться... альясы запроса у меня с шириной сразу, это очень удобно - к примеру пишите select name as ФИО_150 from...вот и вам и имя и ширина сразу ) важно подчеркивание ставить просто в конце... var vSp: МойДатасет; c: TLinkGridToDataSourceColumn; i,k: integer; begin LinkGrd.Columns.Clear; for i := 0 to vSp.FieldCount - 1 do begin c := LinkGrd.Columns.Add; c.MemberName := vSp.Fields[i].FullName; k := Pos('_',c.MemberName); if k > 0 then begin c.Width := copy(c.MemberName,k+1,length(c.MemberName)-k).ToInteger; c.Header := copy(c.MemberName,1,k-1); end else begin c.Width := 100; c.Header := c.MemberName; end; end; end;
  11. Вот такой код судя по форумам у многих работает норм...но не у меня. procedure TForm1.Button1Click(Sender: TObject); var ADeviceID, ADeviceToken: string; begin APushService := TPushServiceManager.Instance.GetServiceByName(TPushService.TServiceNames.APS); AServiceConnection := TPushServiceConnection.Create(APushService); AServiceConnection.Active := true; AServiceConnection.OnChange := OnChange; AServiceConnection.OnReceiveNotification := OnReceiveNotificationEvent; ADeviceID := APushService.DeviceIDValue[TPushService.TDeviceIDNames.DeviceID]; ADeviceToken := APushService.DeviceTokenValue[TPushService.TDeviceTokenNames.DeviceToken]; Писал гонсалес еще для XE7, толи все работают на ХЕ7 то ли у меня руки кривые, но на строке ADeviceID ...вылетает access violation ... Мои настройки: XE8upd1, IPAD Estay, OX Osemite 10.10(VMWare). Сертификат APN выпускал, но чую не в нем дело... Что только не делал...программа то работает, просто этот код погоняет...
  12. Пуш сообщения приходят много и переполняют панель уведомлений. Вопрос, кто-нить делал прием пуш сообщений группой? Например как gmail двойная иконка и пачка сообщений? Агент также умеет. Может надо поковырять манифесты или еще что? Буду премного благодарен, актуальная тема...
  13. и еще может кому сгодиться, если в БД картинки не меняли, то логично, что их не зачем загружать. Для этого я просто сохраняю компонент ImageList в файл. Если есть лучше решения, то критика приветствуется! //сохраняем компонент ImageList в файл vStream := TFileStream.Create(TPath.GetDocumentsPath + '/imagelist',fmCreate); try vStream.WriteComponent(imgMain); finally vStream.Free; end; //загружаем файл в компонент ImageList vStream := TFileStream.Create(TPath.GetDocumentsPath + '/imagelist',fmOpenRead); try vStream.ReadComponent(imgMain); finally vStream.Free; end;
  14. Фил я кстати тоже так подумал )))) Исправил в своем коде ТОЛЬКО ОДНУ строку и тогда транспарент заработал (чудеса FMX): b.Bitmap.Assign(b.CreateBitmap('C:\Delphi\Images\GlyFX\glyFX\Icons\Aero\BMP\32x32\eject_blue_32_h.bmp')); и даже удалил b.Bitmap.SetSize(32,32); Сергей, в любом случае вы помогли спасибо! Но мой код по мне куда проще и короче... Вообщем вот готовый простейший код procedure TForm1.Button1Click(Sender: TObject); var Layer: TLayer; c: TCustomSourceItem; b: TCustomBitmapItem; d: TCustomDestinationItem; begin d := ImageList1.Destination.Add; Layer := ImageList1.Destination[d.Index].Layers.Add; Layer.SourceRect.Rect := TRectF.Create(TPoint.Zero, 32, 32); c := ImageList1.Source.Add; Layer.Name := c.Name; c.MultiResBitmap.TransparentColor := TAlphaColorRec.Fuchsia; b := c.MultiResBitmap.Add; b.Bitmap.Assign(b.CreateBitmap('C:\Delphi\Images\GlyFX\glyFX\Icons\Aero\BMP\32x32\arrow_left_32_h.bmp')); Button2.ImageIndex := 0; end;
  15. Попробую. Выкладывайте на всеобщее обозрение здесь, или в комментариях к статье. так это и есть тема сообщения...
  16. Не похоже нет. Сергей, я был бы очень признателен по сабжу, т.е. не могли бы вы как профи поправить мой код? Убрать все лишнее, дестинейшн может быть и т.п., и оставить только нужное и правильное?
  17. Эмулятор да тормозит, жесть против ИОС эмулятора. Лучше Андроид устройство какое нить по юсб или вафле (последнее сложнее в реализации). Компиляция я бы сказал - невыносимая, даже по юсб. Сделайте следующее: - установите делфи и проекты ваши на SSD диск скажем 250гб (у меня самс ево 500 и операционка на нем) - поставьте процессор core i7 после всего этого у вас компиляция будет всего на 95% отставать от VCL, против текущих 550%.
  18. Короче, спасибо за ХЕ8, а в остальном видно что пацаны не плохо отдохнули на мальдивах на срезанное анрил бабло 2к...и...решили попросту повторить. VCL я так понял живет своим мирком и будет дальше жить, добавив .ToString и .ToInteger поняли, что для нас это нечто божественное, и ...на этом харэ. Остается уповать на стабильность фмх...но это не проверено еще. Я не разочарован, ведь есть ХЕ8...возможно на их месте я бы делал как они...оттягивался и ловил момент ),.. разводил кроликов дальше. P.S.: по уму надо было бы книжки нормальные создать по фмх с нормальными примерами, а то просто тупо на свои же продукты публикуют сторонние блоги делая из этого сенсацию, как типа если я бы изобрел авто и бросил на эксперименты индейцам и угорал..."он поехал!", "он смог завести!", "а это претендует на блог!!!"...стыдно и за них и за себя...
  19. uses AndroidAPI.Helpers, AndroidAPI.JNI.GraphicsContentViewText; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } function BatteryPercent(const aContext: JContext): Integer; end; var Form1: TForm1; implementation {$R *.fmx} function TForm1.BatteryPercent(const aContext: JContext): Integer; var filter: JIntentFilter; battery: JIntent; begin filter := TJIntentFilter.Create; filter.addAction(TJIntent.JavaClass.ACTION_BATTERY_CHANGED); battery := aContext.registerReceiver(NIL, filter); result := battery.getIntExtra(StringToJString('level'), -1) end; procedure TForm1.FormCreate(Sender: TObject); var myContext: JContext; begin myContext := SharedActivityContext; Showmessage(BatteryPercent(myContext).ToString); end; а еще по другим параметрам испанец круто обсосал тут http://neftali.clubdelphi.com/?p=3157 а если надо модель, серийный то это у вас на компе Delphi\Samples\Object Pascal\Mobile Snippets\DeviceInfo (но тут хоть ИОС есть).
  20. думаю стоит идти в направлении frxUserDataSet.RecNo
  21. Ответ порешили в другой ветке http://fire-monkey.ru/topic/1680-kak-programmno-dobratsia-do-svoistv-stilia-fixedheight-i-fixedwid/#entry8493
  22. Как то с vcl еще привычка была наследоваться от базовых форм. Тут она и пригодилась, в базовой форме можно все перегрузки и кидать, а в наследованной все автоматом цепляется...проверенно, работает! верхняя ссылка глючит, там про перегрузку контрола: type TSpeedButton = class(FMX.StdCtrls.TSpeedButton) protected procedure AdjustFixedSize(const Ref: TControl); override; end; type TForm1 = class(TForm) private { Private declarations } public { Public declarations } end; implementation {$R *.fmx} { TSpeedButton } procedure TSpeedButton.AdjustFixedSize(const Ref: TControl); begin SetAdjustType(TAdjustType.None); end; ну а далее мое предложение про наследование, зато код без мусора...он в предках...: type TForm2 = class(TForm1)
  23. https://delphihaven.wordpress.com/2013/12/30/removing-a-fmx-controls-size-restrictions/ Фил, вот вариант, через одно место, но без стилей. Если не много форм, то мусорить в типах в начале стоит, ради дальнейшего избавления от стилей. Это работает, причем не обязательно с спидбатонами. Но надо смириться, что в дизайне будет изврат.
  24. Поясню немного: 1. Заходим в редактор стиля SpeedButton. 2. Сохраняем стиль. 3. В текстовом редакторе удаляем строку FixedHeight = ... и сохраняемся. 4. В редакторе стилей загружаем стиль обратно. 5. Готово) спасибо Фил,...как всегда на высоте ). эх кастри..ь бы того прогера кто это сво-во влепил...
×
×
  • Создать...