×Закрыть

Як запустити Xamarin.Forms.Viewer?

Доброго дня. Потребую поради.

Вивчаю Xamarin, щоб написати мобільний додаток для Андроїда. Як я зрозумів з туторіалів, відлагоджувати можна як на реальному пристрої, так і у вбудованому емуляторі. Мені другий спосіб більш зручний в силу певних причин.

Проблема: Не запускається вікно оцього самого емулятора.
Спочатку все ок — написав xaml і cs файл, зберіг, побудував (rebuild) андроїд-проект, далі Вид — Другие окна — Android — Xamarin.Forms.Viewer.
Вікно починає рендеритись, далі вилітає з помилкою «something went wrong, connection is closed».
Якщо ж запустити на виконання через емулятор (напр., через viaualstudio_android-23_x86_phone), то побудова проекту (сборка) обривається на півшляху, бо «emulator-arm.exe прекратил работу». Те саме і у випадку вибору інших емуляторів.

Що я пробував, погугливши:
— почистив папку C:\Users\(...)\AppData\Local\Temp
— прокачався до JDK8 (update 151)
— оновив Google Android API (тепер у мене стоїть 6.0, 7.0 і 7.1).
— опції Use Host GPU в AVD manager я не знайшов ;(

Конфігурація мого ПК:
— Win7 Home Basic 32-bit
— VS2017

Чи хтось підкаже, як таки змусити його запуститись? Треба розібратись до вечора неділі. Заздалегідь вдячний.
Звісно, я можу кодити «наосліп», не відлагоджуючи (все одно віддавати колезі, у якого все працює), але це, самі розумієте...

Примітка 1. в одному з результатів гугління радять працювати на VS2015. Вона в мене є на іншому компі, але хотілося би все-таки змусити Вьювер запрацювати на 17-ці.
Примітка 2. в іншому результаті пишуть, що якщо немає Mac agent-а, Вьювер не фуричить, навіть якщо тільки під Андроїд програмуєш. Не знаю, чи це правда. Якщо все ж-таки так, то... Словом, Мака в мене немає. Чи не поділиться хтось в лічку своїм MacID, чи як там воно зветься? Обіцяю нічого такого не робити (тим паче, що, як я сказав, мені лише під Андроїд треба). Дякую. Можете відмовити, я зрозумію.

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

А что-то типа такого не подходит? ru.bignox.com

я там внизу вже написав, що знайшов сторонній плеєр, але дякую, з вашим теж ознайомлюсь)

«мой» радовал скоростью работы по сравнению с другими, когда мне нужен был эмулятор.. И простотой инсталляции туда программ. Но не уверен, что он будет удобен для разработки, так как создавался, что бы играть в андроид игры на компьютере.

Чи вдалось вирішити проблему?

наполовину. прев’ювер не працює, але я дооновив 17-ту студію до 15.3.3. і Андроїд СДК, запустив... Емулятор андроїда запрацював, але повільненько (Intel HAXM у мене не підтримується). Тож я скачав Droid4x, тепер щоразу буду білдити в Студії apk і відкривати його в Дроїді.

Скільки секунд займає у вас повторна побудова apk? (тобто, мене цікавить швидкість розробки)
У Вас PCL проект?

ще не заміряв (пізно вже), але в емуляторі андроїда було хвилини з 4.
так, ПСЛ.

Не так давно вони писали про www.xamarin.com/live — але я не використовував цю річ. Якщо ж Xamarin Live Player не спрацює, то про інше рішення я написав у приватному повідомленні, якщо буде час і потреба — зможете спробувати.

дякую, лайв плеєр спробую пізніше. З рішенням в листі ознайомлюсь згодом.

В чому проблема поставити Win 10 64 bit?

По-перше, немає грошей, а піратку ставити стрьомно. На щастя, гроші — справа наживна.
По-друге, я волів би оновитися з 7 до 10 автоматом, зі збереженням всіх даних, як це було з вістою (емнип), але це неможливо, треба всі свої дані скинути на флешку, грубо кажучи, оновитись, а потім покласти назад. Проблема часу.
Але в цілому ваш натяк зрозумів. Як тільки, так зразу).

пізно, після нового року обновлення до вінди 10 платне :(

оО оууу... ну, в принципі, повертаємось до початкового варіанту з великою флешкою.

***** МОЙ БРАТ УМЕР ОТ ПЕРЕДОЗИРОВКИ ЭТОЙ ДРЯНЬЯ ТЫ ***** ****** ТЫ ******* ЧТО WINDOWS 10 UPGRADE БЕЗВРЕДЕН *******!!1

Система встановлена з нуля (а не оновлена) працюватиме швидше, і часу буде більше, бо не виникатиме таких проблем. Зараз Win 10×64 — стандарт, а Win 7×86 вже доживає вік. Ще раджу SSD на 240 ГБ хоча б (хоч сам живу на 120, тож можна і так) і пам’ять добити до 8 ГБ, а краще до 16. І тоді точно продуктивність зросте :)

Спробуй окремий емулятор від МС: www.visualstudio.com/...​vs/msft-android-emulator
Я його використовував, там є емулятори під різні екрани і версії андроїда

дякую, але він же лише під 64-біт, не? а в мене 32.

Не бачу, де таке написано? Принаймні він вимагає білдити проект під х86, мені здається, повинен іти на 32-бітній.

Скоріше проблема може бути в тому, що у тебе вінда Home, бо ці емулятори потребують Hyper-V для нормальної продуктивності

Відповідь на верхнє питання: скачавши ваш емулятор, я його запустив, і мені видало попередження: «треба 64-бітна вінда, поставте її, а тоді продовжимо».
на нижнє: гм... ясно :(. пошукаю, як проапгрейдитись до ультімейта.

а чому б не написати на Java\Kotlin і не морочити собі голову з тим майкрософтом?

по-перше, я не вмію, по-друге, моя посада якраз «хамарінщик». бачили очі, що купували...)

вложить кучу времени в java\Kotlin только потому что не запустился эмулятор — классный совет!

Я би задумалася над перспективностью работы в сфере, где даже с эмулятором такие проблемы.

Не уверена насколько можно винить сферу за эмулятор когда рабочая система у ТС:

Win7 Home Basic 32-bit

Прошу прощения, вы правы. Автор ССЗБ, так как

Xamarin.Forms Windows support requires Windows 8.1, and Xamarin.Forms UWP support requires Windows 10
— Win7 Home Basic 32-bit

можливо проблема саме в застарілій та обмеженій платформі

можа спробувати інші емулятри. деякі з них підтримують відалене встановлення додатків на відлагодження. колись пробував розробляти під андроїд і замість тормознутого вбудованного емулятора вікористовував Genymotion. Нажаль зараз він став платним. а колись була безкоштовна обмежена версія.

В мене воно якось само пофіксилося після якогось апдейту.
Але підозрюю, що написано воно через жопу, тому після фіксу часто вирубалося.
Зараз не знаю, може, в якомусь апдейті знову зламалося, довго з Xamarin не працював.

Мак нужен если ты пытаешься отлаживать xamarin.ios приложение.
А вообще, писать UI для андроида при помощи xaml это то ещё удовольствие.
Что бы написать нормальное кроссплатформенное ПО при помощи xamarin, нужно выносить бизнес логику в отдельную библиотеку, а UI делать в соседних приложениях Xamarin.Android/Xamarin.ios.

да я так и делаю — один общий проект и 3 других под каждую платформу — андроид, айос, uwp.
Проблема вот в чем — гляньте сюда. metanit.com/sharp/xamarin/2.4.php
У меня вместо окошка Формс Превьювера, как здесь нарисовано, — каждый раз окно с ошибкой, описанной выше, понимаете? т.е. я еще даже до отладки не добрался.

У меня такое несколько лет назад было, на телефоне проблем не было, а превьюха показывала ошибку. Это возможно связано с самой студией.

возможно. и что делать, откатиться до 15?

В инете рекомендуют для начала посмотреть логи замарина. use VS help menu, Xamarin > Logs. Open the last .svclog file. forums.xamarin.com/...​ms-previewer-isnt-showing

Делайте UI при помощи XMLa для анроида, при помощи нативных средств. Поверьте, каждый раз когда Майкрософт заявляет что выпускает один интерфейс для всех платформ, с вероятностью в 99% это потом скатывается в бездну. Это я к тому что вряд ли у вас получится сделать что-то путное без головной боли на UWP для Анроида.
:)

Подписаться на комментарии