- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
коммит на гитхабе:
https://github.com/nativescript-vue/nativescript-vue.org/commit/f964457a5e4944864485c7194b0b5d850f8edb67
русская документация:
https://nativescript-vue.org/ru/docs/routing/manual-routing/#navigateto
английская документация:
https://nativescript-vue.org/en/docs/routing/manual-routing/#passing-props-to-the-modal
угадайте, какой вариант передачи пропсов рабочий ?
ключевые слова тут "быстро" и "сразу".
> Расскажи на чём быстро делать приложения сразу под гейфон и ведро?
Нативные приложения разрабатываются с оглядкой на аппаратное обеспечение, общепринятые практики в UI и UX выбранной платформы. "Кроссплатформенный" UI - это компромисс, который убог на всех платформах
> ключевые слова тут "быстро" и "сразу"
Я слышал, что приложения разрабатывают для клиентов, которые будут их использовать, а не для программистов, которые их напишут. "Быстро" и "сразу" - принципы говнопроектов на фрилансе/говностартапов, которые по дефолту мало кому интересны. Поделки на электроне и иже с ними, которые по какому-то недоразумению стали популярны - приносят боль и пользователям, и программистам.
А по теме - мой клиентский js по умолчанию отключен на любых мобильных платформах, поэтому не знаю. Flutter, React Native, Nativescript - разрабатывай на чем хочешь, ничего против не имею.
My point - твои проблемы при разработке - лишь слабая моральная компенсация проблем будущих пользователей и разработчиков, которые это говно должны будут поддерживать.
>"быстро"
У них фреймворк так и называется - "QtQuick"
А что если JavaScript для меня явлется new language? Или по мнению авторов этого говна, жабаскрипт обязаны знать вообще все программисты?
Нативный джаваскрипт позволит хоть както стандартизировать эти джунгли
"Java" может существовать не только на "Sun JVM" (ты ведь её имел в виду?), но и на других виртуальных машинах, а также вообще кокококонпелироваться в нативный кококод (gcj, например).
2. "Кококококотлин" анонсировали в качестве официального языка для "Андроида" не так давно (в 2017 году).
>> Можа взять Xamarin и писать всё на C#, это лучше
Это лучше богомерзкого JS.
Ещё, вероятно, можно перейти на Haxep.
Что мешает её туда поставить?
З.Ы. Кстати, а как они переименовали JNI чтобы в нём не было упоминаний о джаве?
https://developer.android.com/ndk/guides/
Вопрос в том, можно ли приложить бинарь в APK и запустить его из "джавы".
Собрать его само собой можно, я так себе sudo конпелял чтобы непонятные руткиты не ставить.
https://github.com/jackpal/Android-Terminal-Emulator
У этой программы есть модуль для JNI, который делает fork и execv:
https://github.com/jackpal/Android-Terminal-Emulator/blob/master/libtermexec/src/main/jni/process.cpp
Программа может насрать на карту памяти и запустить процесс с неё.
Сёма меня каждый день скрывает, но только почему-то всё равно видит.
Есть даже программы, которые помогают использовать флешки, отформатированные в ext2 (Link2SD, FolderMount).
1. Приложение отображает текстовое поле.
2. К принятой от пользователя текстовой строке приклеивает заголовок, чтобы получился elf-файл.
3. Сохраняет полученный файл в /data/local/tmp и устанавливает атрибут «исполнимый».
4. Через JNI вызывает execv.
Тогда на «Андроиде» можно будет развлекаться написанием нативного кода в ASCII.
> приклеивает заголовок, чтобы получился elf-файл.
А зачем? Почему бы просто не написать goto *(void*)string или ((void(*)())string)()?
https://play.google.com/store/apps/details?id=com.esminis.server.php
Именно поэтому я за «PHP».
Этот же автор собрал «MariaDB» (форк «MySQL»), «Redis», «Apache».
Можно без рута через рекавери, если у тебя есть ключ разработчика для подписывания файла update.zip (фантастическое условие). Можно и без подписи, если у клиента не нормальное меню рекавери, а CWM/TWRP, в котором можно выключить проверку подписи.
Или ты критикуешь рахитинктуру Андроида? На это тоже есть причины: если бы нативные экзешники ставились в один клик, вирусов было бы как на Винде.
В принципе, почти всё настраивается через веб-морду. Просто было интересно очередной бизябокс полапать.
Погуглил — у всех такая же проблема. В старой прошивке телнет работал, в новой паршивке телнет сломали.
>> Есть транслятор .class файлов в код под ART.
Пожалуй, придётся согласиться. На Андроиде есть какая-то своя хрень с классами и с библиотекой, а из какого языка кококонпелировать (из Java, из Кокококотлина или ещё из какого-нибудь) — это забота разработчика.
ART и доживающая свой век машина Dalvik — регистровые, а Sun JVM — стековая (как и CLR, кстати). То есть даже рахитинктура несовместимая.
Можно было бы сказать, что и на J2ME никакококой Java нет (на телефоне коконпеляторов не было, а у разработчиков кроме javac ещё были MIDlet Pascal, Canterbury Modula-2 и прочие кококонпеляторы с других языков), но не получается, потому что J2ME частично совместима с J2SE. Так?
>> Вообще я не знаю какие могут быть причины для писания на JS кроме незнания никакого другого языка.
Отсутствие кококонпеляции. Именно поэтому я за "PHP".
А ещё куча говна в "npm". Помнишь, как дельфятники вместо того, чтобы писать кококод, гуглили готовые кокококомпоненты?
Полез читать документацию по NDK. Встретил там упоминание JNI:
https://developer.android.com/training/articles/perf-jni
Как же так, Марьиванна, жопа есть, а слова нет?
> На андроиде джавы нет. Ни компилятора, ни виртуальной машины.
Речь вроде идет про язык программирования, а не про то, через какую жопу оно там выполняется на конечном устройстве. Вот есть например emscripten - там сишку и плюсы можно компилировать в жабаскрипт и запускать эту хуйню потом в браузере. Хочешь сказать, что если я пишу код на Си и потом компилирую его в жабаскрипт, то это не Си?
Или вот если взять какой-нибудь дохлый 8-битный микроконтроллер - в него например не выйдет запихнуть некоторую фигню, которая в стандарте Си описана (типа каких-нибудь https://en.cppreference.com/w/c/thread ) - так что теперь, это уже не Си? А если я на контроллере реализовал интерпретатор брейнфака, и реализовал компилятор из Си в брейнфак и потом в микроконтроллер с интерпретатором брейнфака заливаю откомпилированную из Си в брейнфак хуйню, то это не Си?
Но ведь и под HotSpot JVM (JVM расшифровывается как Java Virtual Machine) можно не на Java писать. Так что ж тогда получается, в официальной и основной JVM от оракла тоже нет никакой джавы? А где она вообще есть?
Кстати, меня ведь и в процессоре никакого Си нет, в процессоре только машинный код исполняется.
Куплю лисп-машины CONS или CADR дорого в любом состоянии.
Телефон: зарегестрируйтесь чтобы просмотреть контакты
https://en.wikipedia.org/wiki/Android_Runtime
> Android Runtime (ART) is an application runtime environment used by the Android operating system. Replacing Dalvik, the process virtual machine originally used by Android, ART performs the translation of the application's bytecode into native instructions that are later executed by the device's runtime environment
> Unlike Dalvik, ART introduces the use of ahead-of-time (AOT) compilation by compiling entire applications into native machine code upon their installation.
Ну если транслируется в native instruction, то естественно можно. Например на ассемблере каком-нибудь.
> At install time, ART compiles apps using the on-device dex2oat tool. This utility accepts DEX files as input and generates a compiled app executable for the target device. The utility should be able to compile all valid DEX files without difficulty. However, some post-processing tools produce invalid files that may be tolerated by Dalvik but cannot be compiled by ART. For more information, see Addressing Garbage Collection Issues.
трансляция в машинный код происходит на этапе установки в андроид, а не на этапе сборки APK. Выходит, все же надо чтоб был DEX bytecode. Ну на нем тоже можно программировать и компилировать в него, минуя байт-код Java
https://xakep.ru/2014/07/03/art-vm/ еще вот
Не из кода C# а из дотнетовского байткода Common Intermediate Language (CIL, ранее назывался Microsoft Intermediate Language - MSIL):
https://habr.com/post/168689/
> Признаюсь, я немного слукавил, сказав, что компилятор dot42 «убирает» IL-код. Это не совсем так. Вместо этого он читает IL-код и конвертирует его в новый язык Register Language или, если короче, RL. Главная разница между IL и RL в том, что IL-код работает на стековой модели выполнения (как и байт-код у Java), а RL-код на регистровой, так же как Dalvik. После получения RL-кода, dot42 производит ряд оптимизаций и наступает этап финальной компиляции. Именно после последнего этапа и получается dex-код, язык среды Dalvik. В чем отличие RL от Dex написано в самом первом посте в блоге разработчиков.
изыди злой дух из ануса!