Forwarded from Java
Killergram – Модуль Android Xposed для удаления нововведённых рекламных сообщений Telegram разработанный на Java.
Поддерживаемые клиенты:
• Official
• Official
• Official
• NekoX
• Nekogram
• Nanogram
• Plus Messenger
• iMe Messenger
• BGram
• Catogram
• Forkgram
• aka
@javatg | #Java #Telegram
Поддерживаемые клиенты:
• Official
telegram.messenger• Official
telegram.messenger.web• Official
telegram.messenger.beta• NekoX
nekox.messenger• Nekogram
tw.nekomimi.nekogram• Nanogram
cool2645.nekolite• Plus Messenger
telegram.plus• iMe Messenger
com.iMe.android• BGram
org.telegram.BifToGram• Catogram
itaysonlab.messenger• Forkgram
forkclient.messenger.beta• aka
org.aka.messenger@javatg | #Java #Telegram
👍5
AFWall – Файрволл на Андроид.
По сути это расширенный редактор iptables (GUI) для Android. Он обеспечивает точный контроль над тем, каким приложениям Android разрешен доступ к сети.
Особенности:
• Несколько профилей с настраиваемыми именами
• Подсвечивает системные приложения настраиваемым цветом
• Уведомлять о новых установках
• Поддержка VPN
• Логгинг и блокировка паролем
@android_its | #Java #Android #Privacy
По сути это расширенный редактор iptables (GUI) для Android. Он обеспечивает точный контроль над тем, каким приложениям Android разрешен доступ к сети.
Особенности:
• Несколько профилей с настраиваемыми именами
• Подсвечивает системные приложения настраиваемым цветом
• Уведомлять о новых установках
• Поддержка VPN
• Логгинг и блокировка паролем
@android_its | #Java #Android #Privacy
🔥6
Ghidra – фреймворк для программной реверс-инженерии (SRE)
Созданный и поддерживаемый Исследовательским управлением Агентства национальной безопасности
⤷ Ссылка на проект
@github_code | #Interesting #Java
Созданный и поддерживаемый Исследовательским управлением Агентства национальной безопасности
⤷ Ссылка на проект
@github_code | #Interesting #Java
👍4❤1🔥1
XPrivacyLua – менеджер по конфиденциальности приложений для Android
Отзыв разрешений у Android приложений часто приводит к ограничениям в функционале или сбоям в работе приложений. XPrivacyLua передаёт приложениям поддельные данные вместо реальных, что позволяет сохранить функционал и конфиденциальность одновременно
#Java #Privacy #Android #Useful
@github_code
Отзыв разрешений у Android приложений часто приводит к ограничениям в функционале или сбоям в работе приложений. XPrivacyLua передаёт приложениям поддельные данные вместо реальных, что позволяет сохранить функционал и конфиденциальность одновременно
#Java #Privacy #Android #Useful
@github_code
GitHub
GitHub - M66B/XPrivacyLua: Really simple to use privacy manager for Android 6.0 Marshmallow and later
Really simple to use privacy manager for Android 6.0 Marshmallow and later - M66B/XPrivacyLua
❤4👍1🔥1
🏪 Google готовится к масштабной чистке в Play Store, цель которой — улучшить безопасность и качество приложений.
Планируется удаление приложений, не соответствующих новым стандартам качества, включая те, которые имеют минимальную функциональность. Это изменение нацелено на сокращение числа низкокачественных приложений, которые могут служить каналом для распространения вредоносного ПО.
Такие меры, как повышенное внимание к безопасности приложений и более строгие требования к содержанию, показывают, что Google стремится сделать Play Store более похожим на App Store от Apple, где уже давно приняты подобные меры контроля.
Несмотря на эти улучшения, проблемы с синхронизацией версий и обновлениями приложений все еще остаются, что подчеркивает необходимость дальнейших усилий со стороны Google для обеспечения безопасности в Play Store.
📎 Полную новостью можно прочитать здесь
#android #java #kotlin #google #googleplaystore #appsecurity #digitalsafety #TechUpdates
@android_its
Планируется удаление приложений, не соответствующих новым стандартам качества, включая те, которые имеют минимальную функциональность. Это изменение нацелено на сокращение числа низкокачественных приложений, которые могут служить каналом для распространения вредоносного ПО.
Такие меры, как повышенное внимание к безопасности приложений и более строгие требования к содержанию, показывают, что Google стремится сделать Play Store более похожим на App Store от Apple, где уже давно приняты подобные меры контроля.
Несмотря на эти улучшения, проблемы с синхронизацией версий и обновлениями приложений все еще остаются, что подчеркивает необходимость дальнейших усилий со стороны Google для обеспечения безопасности в Play Store.
📎 Полную новостью можно прочитать здесь
#android #java #kotlin #google #googleplaystore #appsecurity #digitalsafety #TechUpdates
@android_its
👍5❤2🔥1😢1
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
💡 Java совет: избегай шаринга данных между потоками
Одна из главных причин багов в многопоточке - общий изменяемый state (shared mutable state). Чем больше потоков трогают одни и те же объекты - тем выше шанс словить race condition, deadlock или “плавающие” ошибки.
Что делать правильно:
✅ 1) Используй immutable-объекты
Если объект нельзя изменить - потокам нечего “делить”, и синхронизация почти не нужна.
В Java это удобно делать через
✅ 2) Общайся через сообщения, а не через общую память
Вместо того чтобы менять общий объект - передавай события через очередь:
-
-
- Actor-style подход
Это снижает связанность и делает поведение системы предсказуемым.
Простой принцип:
Не “разделяй память”, а “разделяй сообщения”.
#Java #SoftwareDevelopment
Одна из главных причин багов в многопоточке - общий изменяемый state (shared mutable state). Чем больше потоков трогают одни и те же объекты - тем выше шанс словить race condition, deadlock или “плавающие” ошибки.
Что делать правильно:
✅ 1) Используй immutable-объекты
Если объект нельзя изменить - потокам нечего “делить”, и синхронизация почти не нужна.
В Java это удобно делать через
record, final поля и неизменяемые коллекции.✅ 2) Общайся через сообщения, а не через общую память
Вместо того чтобы менять общий объект - передавай события через очередь:
-
BlockingQueue-
ConcurrentLinkedQueue- Actor-style подход
Это снижает связанность и делает поведение системы предсказуемым.
Простой принцип:
Не “разделяй память”, а “разделяй сообщения”.
#Java #SoftwareDevelopment
❤3👍1🔥1
⚡️ Spring Boot: полный контроль над HTTP-ответами через ResponseEntity
Если нужно управлять не только телом ответа, но и статусом и заголовками — используйте ResponseEntity.
Что это даёт:
- Явно задаёте HTTP-статус (200, 404, 201 и т.д.)
- Добавляете кастомные заголовки
- Возвращаете любой объект в body
- Контролируете поведение API на уровне протокола
Пример:
• разные статусы для разных сценариев (404, 400, 204)
• REST API с чёткой семантикой
• добавление headers (pagination, tokens, meta)
• возврат пустого ответа без body
Совет:
Если метод просто возвращает данные - достаточно вернуть объект.
Если нужен контроль над HTTP - всегда ResponseEntity.
@javatg
#SpringBoot #Java #Backend #SoftwareEngineering
Если нужно управлять не только телом ответа, но и статусом и заголовками — используйте ResponseEntity.
Что это даёт:
- Явно задаёте HTTP-статус (200, 404, 201 и т.д.)
- Добавляете кастомные заголовки
- Возвращаете любой объект в body
- Контролируете поведение API на уровне протокола
Пример:
@GetMapping("/users/{id}")
public ResponseEntity<User> getUser(@PathVariable Long id) {
User user = userService.findById(id);
if (user == null) {
return ResponseEntity.status(HttpStatus.NOT_FOUND).build();
}
return ResponseEntity
.status(HttpStatus.OK)
.header("Custom-Header", "UserFound")
.body(user);
}
• разные статусы для разных сценариев (404, 400, 204)
• REST API с чёткой семантикой
• добавление headers (pagination, tokens, meta)
• возврат пустого ответа без body
Совет:
Если метод просто возвращает данные - достаточно вернуть объект.
Если нужен контроль над HTTP - всегда ResponseEntity.
@javatg
#SpringBoot #Java #Backend #SoftwareEngineering
❤2👍1
🚀 Ускоряем Spring Boot без изменения кода
Многие приложения тормозят не из-за бизнес-логики, а из-за логирования.
Каждый лог - это I/O операция. При высокой нагрузке это становится узким местом.
Решение - асинхронное логирование через Logback.
Что происходит:
- сообщения складываются в очередь
- отдельный поток обрабатывает их в фоне
- основной поток не блокируется
- меньше задержек и выше throughput
Настройка проста - добавьте
src/main/resources/
Пример конфигурации:
Когда это особенно полезно:
• high-load сервисы
• микросервисы с большим количеством логов
• API с высокой RPS
• продакшен-окружение
⚠️ Важно: при аварийном завершении часть логов из очереди может потеряться. Для критичных логов используйте файл + async.
Маленькая настройка - большой прирост производительности.
#SpringBoot #Java #Backend #Performance
Многие приложения тормозят не из-за бизнес-логики, а из-за логирования.
Каждый лог - это I/O операция. При высокой нагрузке это становится узким местом.
Решение - асинхронное логирование через Logback.
Что происходит:
- сообщения складываются в очередь
- отдельный поток обрабатывает их в фоне
- основной поток не блокируется
- меньше задержек и выше throughput
Настройка проста - добавьте
logback-spring.xml в:src/main/resources/
Пример конфигурации:
<configuration>
<!-- Async wrapper -->
<appender name="ASYNC_CONSOLE"
class="ch.qos.logback.classic.AsyncAppender">
<appender-ref ref="CONSOLE"/>
<queueSize>5000</queueSize>
<discardingThreshold>0</discardingThreshold>
<includeCallerData>false</includeCallerData>
</appender>
<!-- Console appender -->
<appender name="CONSOLE"
class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>
%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger - %msg%n
</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="ASYNC_CONSOLE"/>
</root>
</configuration>
Когда это особенно полезно:
• high-load сервисы
• микросервисы с большим количеством логов
• API с высокой RPS
• продакшен-окружение
⚠️ Важно: при аварийном завершении часть логов из очереди может потеряться. Для критичных логов используйте файл + async.
Маленькая настройка - большой прирост производительности.
#SpringBoot #Java #Backend #Performance