Andrey
А как это сделать?
Andrey
Oleg
ALΣX
всем привет, не получается отловить сообщения через ipcRenderer
изнаачльно задача отрендерить логи из main процесса в ui render
пробую через бридж
contextBridge.exposeInMainWorld('electron', {
ipcRenderer: {
...ipcRenderer,
send: (channel, data) => ipcRenderer.send(channel, data),
on: (channel, func) => ipcRenderer.on(channel, (event, ...args) => func(args)),
// on: ipcRenderer.on.bind(ipcRenderer),
removeListener: ipcRenderer.removeListener.bind(ipcRenderer),
},
});
--------
export const testRun = () => {
console.log("testRun");
ipcRenderer.send('log', "Привет")
setInterval(() => {
const currentTime = new Date().toLocaleTimeString();
// console.log("Привет", currentTime);
ipcRenderer.send('log', "Привет", currentTime)
}, 1000);
}
в render использую react
useEffect(() => {
// event: IpcRendererEvent
electron.ipcRenderer.on('log', (e, ...args) => {
console.log('ipcRenderer', `${args}`);
// setLog([...logs, ...args])
});
}, []);
в обьекте window есть ipcRenderer но ничего не ловит
С main процесса в рендерер вроде бы сообщения передаются через webContents.send, что-то не припомню, что бы в ipcMain имел какие-то собственные методы для передачи сообщений. Или же использовать ipcRenderer.invoke, где можна вернуть результат после обработки в ipcMain.handle. Все зависимо от реализации.
Алексей
Нужно запихнуть Google Analytic 4 в приложение. Кто-то сталкивался с этим?
Хотелось бы какую-то либу для отправки событий. Самому писать используя API не очень хочется..
В гугл не отправлять. Гуглил, гуглю, и продолжу гуглить , но пока никакой полезной инфы не нашел...
Помогите кто чем может.
Den
Sergey
Sergey
Sergey
там используется пакет universal-analytics
Sergey
посмотрите его API и что он поддерживает
Alexander
ALΣX
пробовали удалить node_modules и package-lock.json и переустановить все зависимости?
И какая версия electron и ноды установлены?
Alexander
ALΣX
Какая версия Electron?
Alexander
ALΣX
^22.0.2
хм, ну она для 16 ноды... странно тогда.
Alexander
Alexander
Rewrite
Это нативный модуль (написан на аддонах) который нужно прогонять через ребилдер
Rewrite
Alexander
Rewrite
https://www.electron.build/tutorials/two-package-structure.html
Rewrite
если иохоок не получается завести, попробуйте uiohook-napi
он точно заводится, сейсам сам его юзаю
Alexander
Alexander
Оно заработало, я пол дня искал замену iohook и не мог найти ничего вменяемого
Rewrite
да, я тоже когда искал такого либа виду нашел сначала кривой иохоок(
Rewrite
uiohook уже полгода работает без проблем
Алексей
там используется пакет universal-analytics
потому что "С 1 июля 2023 года стандартные ресурсы Universal Analytics прекращают обработку данных." Пакет из статьи не поддерживает 4 аналитику. последний релиз пакета - год назад.
Ещё причины нужны?
Rav
Всем привет. Подскажите, пожалуйста, как можно сделать, чтобы окно приложения на экранах с разным разрешением отрисовывалось одинаково в одном месте. А то если ты задаешь координаты и на одном разрешении окно отображается нормально, в углук экрана например, то на другом оно будет вообще не в области видимости
Sergey
Sergey
positionX = screenWidth - windowWidth - (10px)
Sergey
условно
Rav
Под каждое разрешение отдельно получается да? В процентах как-то нельзя отступ задать по x,y?
Sergey
Sergey
Sergey
хочешь высчитать процент ну посчитай его
Sergey
screenWidth / 100 * (percent)
Rav
Понял, большое спасибо))
Алексей
Andrey
Товарищи подскажите как сделать отверстать на 3840px. Адаптация в панели разработчика не работает. Как мне ресайзить? Если на сайте то просто уменьшается zoom
Rustam
Andrey
1920
Rustam
на системном уровне масштаб сделай или на уровне видеокарты
Rustam
на уровне видеокарты - лучшая идея
Rustam
у радеонов есть возможность задать больше, не знаю как у нвидиа
Andrey
ладно, может кто ещё дельного скажет
Unknown
Andrey
Unknown
а как оно может не работать?
Unknown
наверное, из-за того, что девтулзы в отдельном окне
Unknown
переведи их в сплит экрана и попробуй
Unknown
Rustam
Andrey
О точно
Andrey
Алексей
Всем привет. Подскажите или ткинет носом, есть следующая задача: приложение на electron запускает другое приложение, задача в момент запуска перекрыть заставки запускаемого приложения. Как сделать окно electron поверх я разобрался, но теперь вопрос в том, что после того как запускаемое приложение стартануло, нужно electron подвинуть назад. Но на сколько я понял метода moveBack аналога moveTop нет в классе BrowserWindow. Кто то реализовывал подобное? В какую сторону стоит ковырять?
Andrey Sicker
Алексей
Я пробовал делать hide, но меня не устраивает что я могу вызвать show только в момент закрытия стороннего приложения и получается что секунду я вижу пустой рабочей стол, хотелось бы именно его подложить под стороннее
Алексей
Вообще впринципе странно, что метод moveTop реализован а moveBack отсутствует
Василий
Ребят, есть вопрос
Я правильно понимаю, что на электроне можно сделать так, чтоб приложение работало и на Пк и на телефоне?
Michael
Не, для телефона вам нужна Кордова какая-нибудь :)
Michael
Но можно исхитриться и сделать так, чтобы страницы обращались к апи приложения-хоста и были одинаковыми и в электроне и на телефоне
Василий
А электрон разве не кроссплатформенный?
Michael
Кроссплатформенный для десктоп платформ
Василий
О, хорошо
Спасибо