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

Kitty

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

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

  • Посещение

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

    16

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

  1. Замена TActionList кодом в 64 битном приложении тоже не помогла: http://docwiki.embarcadero.com/RADStudio/XE8/en/Taking_Pictures_Using_FireMonkey_Interfaces чего то проекту 64 bit не хватает...
  2. Переименование не к чему не приводит. В 64 bit приложении когда пытаюсь воспользоваться галереей или сделать фото, то приложение не всегда падает, иногда выдает: Error: Invalid class typecast
  3. Правильно ли я поняла, что надо дать ключу другое имя, например для камеры будет Privacy - Camera usage description исходя из этой ссылки: http://stackoverflow.com/questions/39465687/nscamerausagedescription-in-ios-10-0-runtime-crash/39488067#39488067 или для RAD проектов это переименование не подходит?
  4. На получение фотографии из галереи одна строчка кода: void __fastcall TFormCamera::TakePhotoFromLibraryAction1DidFinishTaking(TBitmap *Image) { Image1->Bitmap->Assign(Image); } На 32 bit работает, а на 64 bit приложение вываливается в тот момент, когда возникает окно разрешить доступ к галереи. На что все таки обратить внимание? Спасибо.
  5. в папке проект\iOSDevice64\Release есть файл проект.info.plist и в нем есть строки из Version Info: <key>NSPhotoLibraryUsageDescription </key> <string>To choose photo</string> <key>NSCameraUsageDescription </key> <string>Get photo</string> <key>NSBluetoothPeripheralUsageDescription</key> <string>iBeacon detection</string> Может этот файл необходимо принудительно добавить в проект через Project Manager ? Спасибо
  6. Да на iPnone 5 - 32 бит. Но я поставила галочку для совместимости кода и ожидала адекватного поведения приложения.Приложение запускается, все работает, кроме камеры и галереи.
  7. Ранее обсуждалось тут: http://fire-monkey.ru/topic/3240-ios-ios10-приложение-падает-при-использовании-камеры-в-ios-10/?sortby=date&page=3 С чем может быть связано, что при обращении к камере и галереи, приложение на 64 bit падает. Флаги прописаны везде. Для 32 bit все работает. С++ Builder 10.1 Up.1 Телефон iPhone 5. Спасибо.
  8. Большое спасибо! Попробовала. При переводе приложения в бекграунд (UIBackgroundModes -> bluetooth-centra), На основании кода выше, я вижу, что компонент TBeacon перестает работать и я вижу слово "Выход" Т.е. все эти рекомендации не работают: https://developer.apple.com/library/content/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/CoreBluetoothBackgroundProcessingForIOSApps/PerformingTasksWhileYourAppIsInTheBackground.html#//apple_ref/doc/uid/TP40013257-CH7-SW1 Есть ли возможность гуру подсказать мне, что надо сделать, чтобы TBeacon работал в фоне.
  9. Kitty

    Поиск по форуму

    Вот я организую поиск по слову TВeacon и в ответ не одной темы. Это моя ошибка или как? Темы точно есть с этим словом.
  10. Прошу прощения, не доходит.... Так где в студии в проекте выставить - минимальная версия iOS 8.0?
  11. Можно ли в настройках форума увидеть все темы, автором которых я являюсь?
  12. 1. Приложение использует TBeacon (bluetooth low energy). Эта технология поддерживается в iOS с версии sdk 7.2 и выше. Где в настройках проекта iOS указать это ограничение, по аналогии с андроид android:minSdkVersion="19" ? 2. Перед публикацией в магазине, нужно ли ставить тут галочку? Спасибо.
  13. Подскажите, пожалуйста, а как рядом с логотипом нарисовать текущую дату на основном изображении?
  14. Спасибо! Видимо вайбер не хочет дружить с приложением fmx. Все та же картина. Наверное глюки вайбера...
  15. А как в другое событие передать правильные размеры: ShowShareSheetAction1->Bitmap->CopyFromBitmap(Image1->Bitmap); ? Что делать std::unique_ptr<TBitmap> aBitmap(new TBitmap()); глобальной переменной? И тогда: void __fastcall TFormCamera::ShowShareSheetAction1BeforeExecute(TObject *Sender) { Image1->Bitmap->SetSize(aBitmap->Width, aBitmap->Height); ShowShareSheetAction1->Bitmap->CopyFromBitmap(Image1->Bitmap); } Так?
  16. Спасибо. Я не могу понять, что происходит когда мы делимся фотографией в вайбере из Image1->Bitmap void __fastcall TFormCamera::ShowShareSheetAction1BeforeExecute(TObject *Sender) { ShowShareSheetAction1->Bitmap->Assign(Image1->Bitmap); } 1. Сделана фотография. 2. Поделилась фотографией в вайбере с человеком, который сидит рядом. 3. Он получил фото все нормально. 4. Вернулась в приложение и сделала новую фотографию. Все нормально. 5. Делюсь этой новой фотографией, а человек по вайберу получает снова предыдущую, а не эту новую! И у меня в вайбере тоже все фотографии стали одинаковые как первая отправленная. Это проблема экшен листа или что? P.S. В фейсбуковский месенджер пришло все нормально. Что за чудеса?
  17. Значит правильно так Image1->Bitmap->Width = aBitmap->Width; Image1->Bitmap->Height = aBitmap->Height; Image1->Bitmap->CopyFromBitmap(aBitmap.get()); А в iOS можно оставить Image1->Bitmap->Assign(aBitmap.get()); там логотип не пропадает при переводе в фон. Все правильно?
  18. Дополнительно обнаружено на андроиде странное поведение... Получаем фотографию с логотипом, убираем приложение в фон, возвращаем приложение и логотип на фото пропадает...
  19. И все таки этот метод не совсем подходит. В папку Камера картинка попадает с оригинальным разрешением 2592х4608, а в папку Saved Photos оно попадает масштабированное до 324х576 (т.е. согласно размерам компонента Image на форме). Как сделать так, чтобы изображение оставалось в оригинальном размере как и получено с камеры?
  20. Правильно ли поведение на андроиде - фотография без логотипа падает в папку Камера и в этой папке это фотография без логотипа. Одновременно с этим фотография попадает в паку Saved Photos и как положено с логотипом на фото. Т.е. на андроиде мы имеем фото в двух местах? void __fastcall TFormCamera::TakePhotoFromCameraAction1DidFinishTaking(TBitmap *Image) { //умный указатель чтобы не использовать delete std::unique_ptr<TBitmap> aBitmap(new TBitmap()); TRectF aRectF; aBitmap->SetSize(Image->Width, Image->Height); aBitmap->CopyFromBitmap(Image); aBitmap->Canvas->BeginScene(); aRectF = RectF(aBitmap->Width - Form1->Image1->Bitmap->Width, aBitmap->Height - Form1->Image1->Bitmap->Height, aBitmap->Width, aBitmap->Height); aBitmap->Canvas->DrawBitmap(Form1->Image1->Bitmap, Form1->Image1->Bitmap->BoundsF, aRectF, 1, true); aBitmap->Canvas->EndScene(); Image1->Bitmap->Assign(aBitmap.get()); //сохранить в галерею _di_IFMXPhotoLibrary Service; if (TPlatformServices::Current->SupportsPlatformService(__uuidof(IFMXPhotoLibrary), &Service)) { Service->AddImageToSavedPhotosAlbum(Image1->Bitmap); } }
×
×
  • Создать...