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

Равиль Зарипов (ZuBy)

Модераторы
  • Постов

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

  • Посещение

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

    265

Весь контент Равиль Зарипов (ZuBy)

  1. а ну тут понятно, из-за кода кривого
  2. да бывает, ждём результатов. если что пишите, по возможности поможем
  3. а что не получилось, все работает нужно было заменить вы собираете photo_{owner_id}_{photo_id} а нужно photo{owner_id}_{photo_id} сайт заменил на свой)
  4. для берлина точно есть на счёт разных платформ незнаю, но посмотрите примеры с сервисами андроид. вам сразу станет ясно о чем я говорю
  5. Не обязательно интент прописывать, достаточно указать общий. А в теле интента передать параметры и прочитать их в том событии
  6. вы видели что вк присылает? там хитрый(неправильный) json лежит, посмотрите через этот форматер. там есть такое: "photo":"[....]" на вскидку можно сказать что это массив данных, по факту это строка. поэтому внутрь вы не можете "зайти" нужно сделать его правильным убрав " до и после []
  7. размер оперативной памяти. ну три-четыре потока на винде я запускал, а на мобилах все же лучше следить
  8. у вас ошибка Также в поле attachments может быть указана ссылка на внешнюю страницу, которую Вы хотите разместить в записи, например: photo66748_265827614,http://habrahabr.ru а вы собираете photo_{owner_id}_{photo_id} при этом photo_id пустое вы не учли в процедуре procedure TForm1.RESTRequest1AfterExecute(Sender: TCustomRESTRequest); что ответы не у всех response, поэтому чтение media_id не происходит {"response":{"upload_url" {"server":630928,"photo": {"response":[{"
  9. ну наверное использовать событие из TfgApplicationEvents Получение результатов (интентов) из других приложений (OnActivityResult)
  10. 1) для чего нужны D.P.F Delphi Android Native Components? 2) в смотрели пример у меня на гитхабе?
  11. Используйте TEncoding.UTF8 Memo1.Lines.LoadFromFile(TPath.Combine(TPath.GetDocumentsPath, 'my.html'), TEncoding.UTF8); Memo1.Lines.SaveToFile(TPath.Combine(TPath.GetDocumentsPath, 'temp.html'), TEncoding.UTF8);
  12. нет необходимости, все аудио-стримы итак работают в потоках
  13. нужно делать вот так: 1) использовать компоненты Ярослава 2) анимацию запускаем до потока (в котором выполняются разного рода запросы), по завершению операции в !синхронизации! выключаем анимацию
  14. получилось?
  15. memo2.Lines.Add( xResp.O['Response'].I['count'].ToString );
  16. ай-яй-яй var JS : TJSONObject; JSAr : TJSONArray; s : string; i:integer; begin s := Memo2.Text; JS := TJSONObject.ParseJSONValue(s) as TJSONObject; if Assigned(JS) then begin JS := TJSONObject.ParseJSONValue(JS.GetValue('response').ToString) as TJSONObject; JSAr := TJSONObject.ParseJSONValue(JS.GetValue('items').ToString) as TJSONArray; Form2.Memo1.Lines.Clear; for i := 0 to JSAr.Count - 1 do begin JS := TJSONObject.ParseJSONValue(JSAr.Items[i].ToString) as TJSONObject; // внутри цикла нужно Memo2.Lines.Add('id: ' + JS.GetValue('id').Value); Memo2.Lines.Add('first_name: ' + JS.GetValue('first_name').Value); Memo2.Lines.Add('last_name: ' + JS.GetValue('last_name').Value); Memo2.Lines.Add('photo_100: ' + JS.GetValue('photo_100').Value); end; JS.Free; end;
  17. ок, у вас ошибка тут JS := TJSONObject.ParseJSONValue(JSAr.Items[0].ToString) as TJSONObject; это массив данных, вам нужно было указать какой элемент вы хотите получить
  18. используйте XSuperObject, код будет такой procedure TForm4.Button1Click(Sender: TObject); // uses XSuperObject; var xResp, xObj: ISuperObject; xItems: ISuperArray; j: Integer; begin xResp := so(Memo1.Text); xItems := xResp.O['Response'].A['Items']; for j := 0 to xItems.Length - 1 do begin xObj := xItems.O[j]; with ListView1.Items.Add do begin Text := xObj.S['first_name'] + ' ' + xObj.S['last_name']; end; end; end;
  19. интересно посмотреть как вы получили токен, я пробовал получать для гугл (давно правда это было, в XE7/8 )
  20. у меня на устройстве нет тормозов кстати
  21. ну вы же понимаете как работает анимация? 1) реорганизация положения контрола на родителе 2) реорганизация положения компонентов внутри контрола 3) сработает ресайз контрола и всех его дочерних компонентов, что вызовет содержащий в обработчиках код если высота контрола для которого применяется анимация равна 100 пикселям, все это повторится 100 раз
  22. когда я пробовал работать с OAuth 2.0, не было возможности получить контент страницы из браузера (кроме Windows), чтобы спарсить токен. а без этого никак
  23. Вы давали ссылку, там был код Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("image/gif"); intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File("example.gif"))); intent.setPackage("com.vkontakte.android"); startActivity(intent);
  24. Присоединяюсь к поздравлению!
×
×
  • Создать...