Size: a a a

2020 May 14

KT

Kathy Ti in Qt
Mr.Mait
Гугли "жизненный цикл активити". Там можно методы переопределять чтоб ловить все жизненые циклы, в том числе и старт.
у меня переопределены onCreate(), onStart(), так вот я не понимаю когда они вызываются если не на старте. Когда я вызываю из с++ метод из этого java класса ни конструктор, ни вышеописанные методы не срабатывают. Так когда же они должны сработать?
источник

KT

Kathy Ti in Qt
получается класс уже есть и функционирует, а у него даже конструктор не вызвался, так что ли?(в самом первом сообщении половина сообщения не вписалась, отредактировала)
источник

M

Mr.Mait in Qt
Kathy Ti
получается класс уже есть и функционирует, а у него даже конструктор не вызвался, так что ли?(в самом первом сообщении половина сообщения не вписалась, отредактировала)
В андроид программировании активити - видимые окна. Какое окно открлось, тот и работает активити.
Как в Qt это сделано, когда QML работает в качестве окна, не разбирался :(
источник

M

Mr.Mait in Qt
Kathy Ti
у меня переопределены onCreate(), onStart(), так вот я не понимаю когда они вызываются если не на старте. Когда я вызываю из с++ метод из этого java класса ни конструктор, ни вышеописанные методы не срабатывают. Так когда же они должны сработать?
Вспомнил. Зайди в манифест и там поищи активити, которая должна запускаться при запуске приложения
источник

KT

Kathy Ti in Qt
она там есть, это org.qtproject.qt5.android.bindings.QtActivity
источник

SK

Serguei Khvatov in Qt
Kathy Ti
у меня переопределены onCreate(), onStart(), так вот я не понимаю когда они вызываются если не на старте. Когда я вызываю из с++ метод из этого java класса ни конструктор, ни вышеописанные методы не срабатывают. Так когда же они должны сработать?
там после этих сигналов/методов и до появления окна слишком много чего происходит. Ловить надо unmap И resize, возможно,  тоже
источник

M

Mr.Mait in Qt
Kathy Ti
она там есть, это org.qtproject.qt5.android.bindings.QtActivity
Вот есть в андроиде класс Appliaction. Он работает сам по себе из коробки. Но людям бывает нужны его методы переопределенные, чтоб узнать когда приложение было первый раз запущено.
Люди унаследуют
public class MyApp extends Application
А в манифесте пишут
android:name=".MyApp"

Может и тебе прописать в манифест вместо
org.qtproject.qt5.android.bindings.QtActivity
свой унаследованый от него класс? И не забывай вызывать переопределенные методы и для базового класса (прим.
super.onCreate();
)
источник

МВ

Макс Воробьев... in Qt
Serguei Khvatov
А он и в LINUX такой же страшный :) А сейчас ещё стал и прожорливым, и капризным.
Plasma (KDE), которая сделана поверх Qt стала куда приятнее и не такая капризная
хз. на втором ноуте стоит ubuntu budgie 20.04 оч даже норм
источник

KT

Kathy Ti in Qt
Mr.Mait
Вот есть в андроиде класс Appliaction. Он работает сам по себе из коробки. Но людям бывает нужны его методы переопределенные, чтоб узнать когда приложение было первый раз запущено.
Люди унаследуют
public class MyApp extends Application
А в манифесте пишут
android:name=".MyApp"

Может и тебе прописать в манифест вместо
org.qtproject.qt5.android.bindings.QtActivity
свой унаследованый от него класс? И не забывай вызывать переопределенные методы и для базового класса (прим.
super.onCreate();
)
Спасибо, сейчас опробую
источник

МВ

Макс Воробьев... in Qt
да и в целом нравится внешний дизайн 3-х gtk приложений
источник

M

Mr.Mait in Qt
Kathy Ti
Спасибо, сейчас опробую
Ну да, был прав. Вот пример https://code.qt.io/cgit/qt/qtandroidextras.git/tree/examples/androidextras/notification?h=5.14. Там класс явы NotificationClient унаследуется от QtActivity. В манифесте запуск идет именно NotificationClient
источник

SK

Serguei Khvatov in Qt
Макс Воробьев
хз. на втором ноуте стоит ubuntu budgie 20.04 оч даже норм
Это пока альтернатив не видел :) Помнится,  был достаточно кровавый переезд с Qt3 на 4, и соответственно, для KDE тоже полгода было очень тяжело. А тут ещё GTK3 был на подходе. Как они нас троллили (и часто тогда по делу) И, что? Наши разборки давно в прошлом, и даже проект Trinity, говорят, переезжает на Qt4. А что с GTK? До сих пор заметные разброд и шатания :(
источник

МВ

Макс Воробьев... in Qt
Serguei Khvatov
Это пока альтернатив не видел :) Помнится,  был достаточно кровавый переезд с Qt3 на 4, и соответственно, для KDE тоже полгода было очень тяжело. А тут ещё GTK3 был на подходе. Как они нас троллили (и часто тогда по делу) И, что? Наши разборки давно в прошлом, и даже проект Trinity, говорят, переезжает на Qt4. А что с GTK? До сих пор заметные разброд и шатания :(
почему не видел? cinnamon, kde, lxqt, xfce, unity7, mate.
источник

МВ

Макс Воробьев... in Qt
сам дизайн гномовских приложений мне нравится. gnome-shell - пробовал года 3 назад - не зашло
источник

KT

Kathy Ti in Qt
Mr.Mait
Ну да, был прав. Вот пример https://code.qt.io/cgit/qt/qtandroidextras.git/tree/examples/androidextras/notification?h=5.14. Там класс явы NotificationClient унаследуется от QtActivity. В манифесте запуск идет именно NotificationClient
указала в манифесте имя нужного активити - логи из конструктора, onCreate(), onStart() не пишутся
источник

SK

Serguei Khvatov in Qt
Макс Воробьев
почему не видел? cinnamon, kde, lxqt, xfce, unity7, mate.
Они все кроме Plasma (KDE) основаны на Gnome. А у них разборки что-то слишком долго не утихают :(
источник

M

Mr_ChAI in Qt
Serguei Khvatov
Они все кроме Plasma (KDE) основаны на Gnome. А у них разборки что-то слишком долго не утихают :(
Даже lxqt?
источник

KT

Kathy Ti in Qt
Kathy Ti
указала в манифесте имя нужного активити - логи из конструктора, onCreate(), onStart() не пишутся
изменила наследование от org.qtproject.qt5.android.bindings.QtActivity на Activity - пришёл ответ из onStart()😊
источник

M

Mr.Mait in Qt
Kathy Ti
изменила наследование от org.qtproject.qt5.android.bindings.QtActivity на Activity - пришёл ответ из onStart()😊
Вот тут еще рассказывается как https://habr.com/ru/post/320696/
источник

M

Mr.Mait in Qt
Kathy Ti
изменила наследование от org.qtproject.qt5.android.bindings.QtActivity на Activity - пришёл ответ из onStart()😊
Все же советую использовать QtActivity, т.к. в исходниках
public class QtActivity extends Activity
Да и всякие вещи полезные инициализирует
источник