ENERGY

Пользователи
  • Публикаций

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

  • Посещение

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

    27

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

  1. Поиск контакта по номеру

    Никак не могу сделать поиск контакта по номеру. Есть пример на Java, я все пытаюсь научиться переводить с java на Delphi, но не всегда получается. Вот пример (там же есть полный пример.): Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber)); resolver.query(uri, new String[]{PhoneLookup.DISPLAY_NAME,... В нем используется Uri.withAppendedPath (это Jnet_UriClass из Androidapi.JNI.Net) Я нигде не нашел пример работы с ним. Попытался сделать сам : vUriClass: Jnet_UriClass; vfilter : TJavaObjectArray<JString>; wUri := vUriClass.withAppendedPath( TJContactsContract_PhoneLookup.JavaClass.CONTENT_FILTER_URI, vUriClass.encode( StringToJString('+11111111') ) ); vfilter := TJavaObjectArray<JString>.Create(1); vfilter[0] := TJCommonDataKinds_StructuredName.JavaClass.DISPLAY_NAME; with SharedActivity.getContentResolver do wCursor :=query(wUri, vfilter, nil,nil, nil); // Query to get all contact sorted by displayname Но ничего не получилось, вылетает ошибка сегментации в withAppendedPath. Помогите пожалуйста, одна на вас надежда. Второй день пошел уже. Как этот ContactsContract.PhoneLookup provider использовать? Вот полный код на Java : public String getContactDisplayNameByNumber(String number) { Uri uri = Uri.withAppendedPath(ContactsContract.PhoneLookup.CONTENT_FILTER_URI, Uri.encode(number)); String name = "?"; ContentResolver contentResolver = getContentResolver(); Cursor contactLookup = contentResolver.query(uri, new String[] {BaseColumns._ID, ContactsContract.PhoneLookup.DISPLAY_NAME }, null, null, null); try { if (contactLookup != null && contactLookup.getCount() > 0) { contactLookup.moveToNext(); name = contactLookup.getString(contactLookup.getColumnIndex(ContactsContract.Data.DISPLAY_NAME)); //String contactId = contactLookup.getString(contactLookup.getColumnIndex(BaseColumns._ID)); } } finally { if (contactLookup != null) { contactLookup.close(); } } return name; }
  2. Нужно двигать объект мышкой по окружности (по границам окружности) - такой круглый Track Bar. Есть сложный метод - перехватывать направление мыши, вычислять путь двигать объект по кругу в направлении мыши. Но может у кого то появятся идеи более простые. например можно ли это сделать на основе Circle и "привязывать" к краям круга (но компонент сам по себе квадратный).
  3. @krapotkin Я не пойму про какой угол идет речь. Про угол наклона луча от центра? Или про угол линии от точки координат мыши до окружности.
  4. X := originX + cos(angle)*radius; Y := originY + sin(angle)*radius;
  5. У FMX куча эффектов, можно менять и перспективу картинки. Посмотрите пример ShaderFilter > Geometry > PerspectiveTransform.
  6. Да еще вот - векторная отрисовка, нативными фукнциями при этом с нормальным сглаживанием.. Работает на Android\iOS\Windows\Mac - юзайте авто гугло переводчик http://www.cnblogs.com/onechen/p/6350096.html https://github.com/OneChen/FMXNativeDraw/
  7. Привет. Очень нужно мнение профессионалов FMX. Нужно создать анимированный контрол - как на гифке . По кругу ходит точка, которую можно перемещать. Также должен меняться цвет градиента (теплый или холодный цвета). Как думаете возможно ли создать такое контрол в FMX, если да то с чего лучше начать. Если брать векторную графику, рисуем этот круг, то как затем его деформировать. И что делать с другими элементами, - волной например. Дорисовать ее в виде Bitmap ? Посоветуйте пожалуйста.
  8. Я решил все на bitmap анимации сделать, без вектора. Мало времени.
  9. Порядок запуска TBitmapListAnimation  

    А как вы сделали векторный вариант?
  10. Как создать простейший Android Broadcast Receiver. Создайте класс, для приема Intent уведомлений: uses Androidapi.JNIBridge, Androidapi.JNI.Embarcadero, Androidapi.JNI.GraphicsContentViewText; type TMyReceiver = class(TJavaLocal, JFMXBroadcastReceiverListener) public constructor Create; procedure onReceive(context: JContext; intent: JIntent); cdecl; end; uses Androidapi.Helpers, Androidapi.JNI.JavaTypes; { TMyReceiver } constructor TMyReceiver.Create; begin inherited; end; procedure TMyReceiver.onReceive(context: JContext; intent: JIntent); begin Log.d('Broadcast Received = ' + JStringToString(intent.getAction)); end; Регистрируем тип уведомлений и приемник в событиях формы: type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { private } FMyListener: TMyReceiver; FBroadcastReceiver: JFMXBroadcastReceiver; public { public } end; procedure TForm1.FormCreate(Sender: TObject); var Filter: JIntentFilter; begin FMyListener := TMyReceiver.Create; FBroadcastReceiver := TJFMXBroadcastReceiver.JavaClass.init(FMyListener); Filter := TJIntentFilter.JavaClass.init; Filter.addAction(TJIntent.JavaClass.ACTION_SCREEN_OFF); Filter.addAction(TJIntent.JavaClass.ACTION_SCREEN_ON); TAndroidHelper.context.getApplicationContext.registerReceiver (FBroadcastReceiver, Filter); end; procedure TForm1.FormDestroy(Sender: TObject); begin TAndroidHelper.context.getApplicationContext.unregisterReceiver (FBroadcastReceiver); end; Все. Теперь когда вы запустите программу и выключите\включите экран, лог покажет : FMX: BroadcastSample: Broadcast Received = android.intent.action.SCREEN_OFF FMX: BroadcastSample: Broadcast Received = android.intent.action.SCREEN_ON Takashi Yamamoto
  11. Конкретно перехватом звонков я не занимался. Вы можете поискать как это сделать на Java на StackOverflow напр, и адаптировать код на Delphi, это самый простой путь.
  12. View различных девайсов

    Конечно, втч и на десктопе. На Windows можно запустить скин для Android или iOS - для отладки например. Хотя у меня есть программа которая имеет одинаковый вид на Android, iOS и Windows.
  13. Application for Windows CE

    Зачем оно надо если сейчас ни одного нового телефона не выпускается с ОС Windows Phone (бывшая Win Mobile) и даже MS недавно перестала поддерживать Windows Phone. https://itc.ua/news/microsoft-prekratila-podderzhku-windows-phone/ Microsoft уходит с рынка мобильных ОС,
  14. View различных девайсов

    У меня обычно один Master View и на Android и на IOS - универсальная форма - меньше париться. Или вы ищите готовые темы скины? Вот здесь гляньте: https://cc.embarcadero.com/item/30491 Можно скачать с бесплатного акаунта. А так вообще я обычно делаю свой скин на основе стандартного. Цвета можно поменять сместив цвет освной png картинки скина (HUE) и затем снова загрузить в стиль.
  15. А чат в Telegram уже не работает?

    Пытаюсь зайти в чат из Оперы под Android нажимаю Join Chat - Telegram пишет "This chat does not seem to exist"
  16. Ну вобщем надо напрямую ввести из телеграмма @fire_monkey
  17. Ошибка при запуске отладки

    Google уже давно исправили этот баг, обновите Android. https://community.embarcadero.com/blogs/entry/debugging-delphi-apps-on-android-8-1-works
  18. Когда приходит пуш - программа не запускается, до тех пор пока юзер не ткнет пальцем в этот пуш. Если нужно в фоне что то делать и нужно это делать именно сейчас и этого нельзя сделать когда вернется пользователь и запустит программу, тогда нужен сервис. Лучше конечно стараться делать без сервисов, т.к. легче будет портировать на iOS.
  19. Кнопка с картинкой

    Поставьте картинке Align = Client .
  20. Т.е. вы хотите распоространять свою версию Android прошивки со своей встроенной программой?
  21. О чем речь вообще? Кто закидывает приложение в папку app и для чего это делать?
  22. AdHoc

    И еще момент, если у вас появляется ошибка error: unable to find utility “PackageApplication”, not a developer tool or in PATH Она лечиться очень просто - нужно всего лишь скопировать один файл на MacOs. Таким образом у меня все работает (создается подписанный файл IPA) на Xcode 9.1, Delphi Berlin Update 1. Скачиваем и распаковываем файл с аттача, и копируем его в MacOs в папку Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin Applications/Xcode.app//Contents - означает что нужно нажать правую кнопку и выбрать меню Contents. Не забудьте сделать полный Build, а затем Deploy. Тот же ответ дублируется здесь: https://stackoverflow.com/questions/43068608/xcrun-error-unable-to-find-utility-packageapplication-not-a-developer-tool PackageApplication.zip
  23. AdHoc

    Кстати вот еще отличная статья. http://delphiworlds.com/2013/10/creating-ad-hoc-deployment-of-ios-apps-with-delphi-part-1/ http://delphiworlds.com/2013/10/creating-ad-hoc-deployments-of-ios-apps-with-delphi-part-2/
  24. У меня работает Debug - Berlin upd2 - PAS 18, SDK 10.2, iOS на iPhone 5s = 11.2, Xcode v9.1. PAS 19 - для Delphi Tokyo и не будет корректно работать с Берлином. Я его не смог запустить с ним - постоянно выбрасывал ошибку, удивлен как вы его совместили вместе.