Com samsung android icecone

Issues with the battery life 🙁

JCMate10

Member

I just got my S21 256 GB (Exynos version). I moved away from my Note10+ as it was too big and battery too poor, bad finger print reader and then I truly hate the curved displays. I really like the look and feel of the S21. Awesome phone, nice screen, much better cellular reception, fine finger print reader.
BUT. The battery is aweful. I get 3½-4 hours screen on time and then its dead. Yesterday it went from 100-85 % after 50 min of browsing using Chrome. During the night (when it is not charging) energy comsumption seems great! the curve more or less flat-lines so it is only when being on. AccuBattery estimates the capacity to 3.820 mAh.

Could it be due to restoring the old backup from the Note10+? Any good ideas?
Should I just return it and get another (S21 or another brand). What are your experience with the battery life?

DaReDeViL

Forum Moderator / Inactive Recognized Developer

Restoring backups can be problematic sometimes. Try to factory reset your phone and install your apps manually.

JCMate10

Member

Restoring backups can be problematic sometimes. Try to factory reset your phone and install your apps manually.

HugePotato

Senior Member

Hey, I have a similar problem as you I guess. My phone has like 6 hours SOT max on 120 Hz if I unplugged it and used straight up without putting it down. Normal day is more like 4 hours SOT with background synchro etc. Guess that 120 Hz screen is real power hungry as some tests have shown that you can do more than 9 hours with 60 Hz. What’s interesting is that S21+ loses only an hour of SOT with 120 Hz enabled. I have also SmartSwitched from S7 but plan on factory resetting in a week or so but I don’t think it will do much.

Guess Samsung may in time make things just a little better with updates but we can’t know that for sure. For me it’s just fine right now, if I had a long day I would use power saving to make sure it stays alive. Coming from S7 with a detoriated battery it’s a huge upgrade for me anyway but I fear that battery will have to be replaced in 2 years time max.

edit: some app data is transferred as well for sure but I’m not 100% positive if it’s Google backup or SmartSwitch. Anyway I think that in this case it’s just a very power hungry screen

Источник

Com samsung android icecone

Использование:
Каждый пользователь мобильного телефона, желающий повысить производительность своих устройств, может использовать данное приложение.
Работадатели, которые хотят контролировать приложения на устройствах своих сотрудников, также могут воспользоваться этим приложением.
Родители могут контролировать приложения на смартфонах своих детей.
PD (Package Disabler) используется для очистки рабочего стола от лишних приложений, во время демонстрации устройств на выставках/ в шоу румах.
ПОМНИТЕ! ВСЕГДА делайте резервную копию данных на Вашем телефоне, т.к. отключение системных приложений может нанести вред работе смартфона.
Ключевые возможности:
Отключение/Включение любых приложений.
PD помогает в 100% случаев определить Bloatware (Лишний, ненужный хлам, установленный производителем) на большинстве устройств Samsung.
Достаточно одного клика, чтобы избавиться от Bloatware (описание читать выше), и повысить производительность вашего устройства.
Экспорт списка Ваших отключенных приложений на внешнюю SD card, для последующего импорта.
«Пакетное редактирование» Отключение/Включение нескольких приложений одновременно.
Фильтрация, отображает все отключеные приложения.
Защита паролем.
Фильтрация, отображает все системные приложения.
Быстрый поиск приложений для поиска. (Звучит бредово).
Для отключения приложения Google cardboard on Gear VR, найдите в списке: (com.samsung.android.hmt.vrsvc).
Примечание:
Если у Вас возникнут проблемы с удалением приложений, попробуйте выполнить следующее:
Зайти в настройки > Безопасность > Администраторы устройства > снять галочку «package disabler admin».
Помните.
При обновлении версии Android, КРАЙНЕ РЕКОМЕНДУЕТСЯ включить все отключеные приложения!
В противном же случае, возможность кривого обновления прошивки равна 100%.

Мы не несём ответственности за ваши действия/поломку устройства.
Поэтому будьте внимательны и в обязательном порядке делайте резервную копию данных!

The description of Package Disabler Pro [Samsung]
***This application works only on Samsung devices ***
Earlier version of package disabler is suspended by Google. We are trying to resolve this .
If you are trying to update from older version you may be asked to purchase again.
You can send us old invoice to refund so that you can swap to new version.

NO ROOTING REQUIRED. IT MAY NOT WORK ON ROOTED DEVICE.

This is the original package disabler developed by OSPOLICE in 2014. Thanks to all the supporters who help develop this amazing APP .

Package Disabler is a Trademark solely owned by OSPOLICE. Trademark serial number
«87012523».

We are a UK Based company operating under UK and EU Laws.

BEWARE of other fake package disablers that are infringing our Trademark.

Package Disabler Pro lets you identify and disable all unwanted packages/apps that come pre-installed with your phone. We have one click option to disable all BLOATWARES. Disabled application / package will not be updated using google play or any other means. So this app can be used for blocking apps (e.g. Parental Controls) or business use cases, you could even disable google play store etc… without rooting the phone. This app also provides password / uninstall protection to avoid misuse.

Package Disabler provides an export/ import functionality to backup all disabled packages on your external storage which you can restore at any time.

Читайте также:  Сине черные обои для андроид

USES
– Every mobile user use wants to improve the performance of their mobile device can use Package Disabler
– Businesses who want to control the APPS on the Employees devices can benefit from Package disabler
– Parents use Package Disabler to control application used by KIDS
– Package Disabler is used in trade shows to clean up the launcher screen when used for demonstrations
Remember, though: ALWAYS have a backup of your phone. Important features might break when disabling system apps.

* Disabling and enabling any packages /apps
* Package Disabler Helps to Identify 100+ Bloatware’s on most of Samsung Handsets
* One click bloatware removal to quickly improve device perfomace and save battery
* Export your disabled list to the external storage to import them later
* Batch operation to enable all disabled packages
* Filter to show all disabled packages
* Password protection
* Filter to show all installed apps
* Filter to show all system packages
* Quickly find apps using the search functionality
* Google cardboard on Gear VR ( disable pckage com.samsung.android.hmt.vrsvc )

Notes
* If you have issues uninstalling apps, try Settings –> Security –> Device administrators, uncheck «package disabler admin».
* Be aware that in order to update your version of Android, you might need all original apps in place. It is advised to always have a backup of disabled packages so you can restore them later.

Disclaimer
* We cannot be held responsible for any damage you may cause.
* Removing critical packages can cause your phone to malfunction. Be sure to ONLY delete apps you know for certain aren’t needed
* Always have backups of your device.
* If you have any questions regarding using Package Disabler, you’re advised to contact [email protected]

If you have any other suggestions, questions or issues, feel free to contact us and I’ll do my best to respond asap. Please don’t use reviews for complaints as we will be unable to respond to your issue.

if you need any customizations to package disabler / consultancy or any comments/ feedback please contact [email protected] or visit http://www.packagedisabler.com/

For commercial use os package disabler or mass deployment of this app, you could purchase app from http://www.ospolice.com/package-disabler/ or contact [email protected]

Требуется Android: 2.3.3 и выше
Русский интерфейс: Да

Сообщение отредактировал Chudmin — 24.10.21, 13:12

Источник

Как удалить вирусы на Samsung Galaxy S10 без рута [Uninstall Samsung Apps]

Как все мы знаем, Android основан на Open Source Project от Google и легко настраивается. В то время как производители смартфонов предоставляют свои собственные скины на своих устройствах с версиями Android. Но кроме Stock Android, большинство производителей Android-смартфонов предоставляют множество предустановленных приложений, которые мы назвали Bloatware. Для того, чтобы избавиться от предустановленных системных приложений с вашего Android-устройства, в основном требуется root-доступ. Иногда некоторые сторонние приложения также могут быть легко удалены. Здесь, в этом руководстве, мы поделимся с вами Как удалить вирусы на Samsung Galaxy S10 без рута [Uninstall Samsung Apps],

В феврале Samsung выпустила свою флагманскую линейку 2019 года, такую ​​как Samsung Galaxy S10, S10 +, S10e и S10 5G. Все эти модели достаточно хороши и оправдывают свой ценовой сегмент. Серия Galaxy S10 оснащена перфорированным дисплеем с множеством уникальных функций. Наконец, новейший и улучшенный интерфейс Samsung One UI — отличное дополнение к своим устройствам на базе Android 9 Pie.

Samsung по-прежнему использует вредоносные программы на устройствах с одним пользовательским интерфейсом

Но Samsung нужно улучшить и предустановленные приложения даже в One UI. Это в основном уменьшает пользовательский опыт, некоторые ненужные или не очень полезные приложения также установлены, которые пользователям не нравятся. Даже устройства серии Galaxy S10 поставляются с предустановленными системными приложениями, которые можно назвать взломом. Теперь, если кто-то захочет удалить это вредоносное ПО, он не сможет сделать это легко. Приложения могут быть отключены с помощью управления приложениями, но не могут быть удалены быстро. Распространение вредоносного ПО также может привести к снижению объема памяти и объема оперативной памяти в фоновом режиме. Здесь, в этом руководстве, мы будем использовать ADB для полного удаления / удаления вирусов с Galaxy S10, Galaxy S10 + или Galaxy S10e без рута.

Чтобы использовать этот метод, нет необходимости разблокировать загрузчик или root. Ваша безопасность и гарантия KNOX в этом методе не аннулируются из-за команды ADB. Этот метод абсолютно безопасен, но GetDroidTips не несет ответственности за любые повреждения или проблемы, возникающие с вашим устройством во время или после процесса. Делайте это на свой страх и риск.

Требование:

  • Для использования команд ADB требуется ПК / ноутбук.
  • USB-кабель.
  • Ваше устройство Samsung Galaxy серии S10

Список имен пакетов системных приложений (предустановленных) на Galaxy S10 Series

Прежде всего, спасибо одному из старших членов XDA Neo3D за то, что он поделился методами и списком пакетов. Просмотрите список пакетов системного приложения и удалите ненужные приложения соответствующим образом, выполнив следующие действия.

Источник

Com samsung android icecone

Сообщение отредактировал Wlryss — 03.12.21, 08:42

Добавить по пути efs в файл factory.prop строку
ro.security.vaultkeeper.feature=0
сохранить и перезагрузить

Любая официальная прошивка через odin и
никаких манипуляций с переводом времени,
не нужно ждать 7 дней, сразу можно ставить TWRP,
в режиме разработчика OEM (Заводская разблокировка)
будет включен всегда. Никакого слова Prenormal в режиме Прошивка.

P.S. при переходе с одной версии андроида на новую
ркомендую удалить эту строку и после обновления обратно прописать!
В 11м андроиде менять через проводник TWRP

Сообщение отредактировал Wlryss — 30.09.21, 08:00

Потом помогли и стал так, DPI 560:

А вот если выбрать DPI 500 так:

Модель Samsung Galaxy Note 4, прошивка кастомная(порт от Note 7), андроид 6.0.1

Сообщение отредактировал MAOQ — 20.03.21, 05:00

MAOQ,
В шапке ветки, в примере шаблона упомянуто, что нужно сообщать модель устройства (ну по подписи можно догадаться, что речь идёт о SM-N910C) и версию Андроид установленной на устройстве прошивки.. Кроме этого — если вы выкладываете два файла SystemUI очевидно для сравнения — то необходимо выложить и опорные фреймы для декомпиляции..

Сообщение отредактировал Wlryss — 20.03.21, 04:50

++++# static fields
.field private static mGearContext:Landroid/content/Context;++++

# instance fields
.
.
++++.method public static getContext()Landroid/content/Context;
.locals 1

sget-object v0, Lcom/android/systemui/SystemUIApplication;->mGearContext:Landroid/content/Context;

return-object v0
.end method++++

.method private isConfigChanged(Landroid/content/res/Configuration;)Z
.
.
.method public onCreate()V
.
invoke-virtual , Landroid/app/Application;->setTheme(I)V

++++ sput-object p0, Lcom/android/systemui/SystemUIApplication;->mGearContext:Landroid/content/Context;++++

.method private updateBackgroundColors()V
.locals 5

.line 384
iget-object v0, p0, Landroid/widget/LinearLayout;->mContext:Landroid/content/Context;

const-string v2, «am_ubcsu»

if-eq v2, v4, :cond_0

if-eq v2, v4, :cond_1

if-eq v2, v4, :cond_2

if-eq v2, v4, :cond_3

if-eq v2, v4, :cond_4

if-eq v2, v4, :cond_5

:cond_0
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on:I

:cond_1
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on_b:I

:cond_2
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on_g:I

:cond_3
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on_o:I

:cond_4
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on_r:I

:cond_5
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_on_s:I

:goto_0
invoke-virtual , Landroid/content/Context;->getColor(I)I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

.line 385
iget-object v0, p0, Landroid/widget/LinearLayout;->mContext:Landroid/content/Context;

const-string v2, «am_ubcsu»

if-eq v2, v4, :cond_6

if-eq v2, v4, :cond_7

if-eq v2, v4, :cond_8

if-eq v2, v4, :cond_9

if-eq v2, v4, :cond_a

if-eq v2, v4, :cond_b

:cond_6
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off:I

:cond_7
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off_b:I

:cond_8
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off_g:I

:cond_9
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off_o:I

:cond_a
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off_r:I

:cond_b
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_off_s:I

:goto_1
invoke-virtual , Landroid/content/Context;->getColor(I)I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorDisabled:I

.line 386
iget-object v0, p0, Landroid/widget/LinearLayout;->mContext:Landroid/content/Context;

const-string v2, «am_ubcsu»

if-eq v2, v4, :cond_c

if-eq v2, v4, :cond_d

if-eq v2, v4, :cond_e

if-eq v2, v4, :cond_f

if-eq v2, v4, :cond_10

if-eq v2, v4, :cond_11

:cond_c
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim:I

:cond_d
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_b:I

:cond_e
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_g:I

:cond_f
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_o:I

:cond_10
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_r:I

:cond_11
sget v1, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_s:I

:goto_2
invoke-virtual , Landroid/content/Context;->getColor(I)I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorInactive:I

.method public updateResources()V
.locals 6

.line 485
iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mSlider:Lcom/android/systemui/settings/ToggleSeekBar;

.line 486
iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mSlider:Lcom/android/systemui/settings/ToggleSeekBar;

iget-object v1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mContext:Landroid/content/Context;

const-string v3, «am_ubcsu»

if-eq v3, v5, :cond_0

if-eq v3, v5, :cond_1

if-eq v3, v5, :cond_2

if-eq v3, v5, :cond_3

if-eq v3, v5, :cond_4

if-eq v3, v5, :cond_5

:cond_0
sget v2, Lcom/android/systemui/R$color;->tw_progress_color_control_normal:I

:cond_1
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_b:I

:cond_2
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_g:I

:cond_3
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_o:I

:cond_4
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_r:I

:cond_5
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_dim_s:I

:goto_0
invoke-virtual , Landroid/content/res/Resources;->getColor(I)I

.line 487
iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mSlider:Lcom/android/systemui/settings/ToggleSeekBar;

iget-object v1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mContext:Landroid/content/Context;

const-string v3, «am_ubcsu»

if-eq v3, v5, :cond_6

if-eq v3, v5, :cond_7

if-eq v3, v5, :cond_8

if-eq v3, v5, :cond_9

if-eq v3, v5, :cond_a

if-eq v3, v5, :cond_b

:cond_6
sget v2, Lcom/android/systemui/R$color;->tw_progress_color_control_activated:I

:cond_7
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_b:I

:cond_8
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_g:I

:cond_9
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_o:I

:cond_a
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_r:I

:cond_b
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_s:I

:goto_1
invoke-virtual , Landroid/content/res/Resources;->getColor(I)I

.line 488
iget-object v0, p0, Lcom/android/systemui/settings/ToggleSliderView;->mSlider:Lcom/android/systemui/settings/ToggleSeekBar;

iget-object v1, p0, Lcom/android/systemui/settings/ToggleSliderView;->mContext:Landroid/content/Context;

const-string v3, «am_ubcsu»

if-eq v3, v5, :cond_c

if-eq v3, v5, :cond_d

if-eq v3, v5, :cond_e

if-eq v3, v5, :cond_f

if-eq v3, v5, :cond_10

if-eq v3, v5, :cond_11

:cond_c
sget v2, Lcom/android/systemui/R$color;->tw_progress_color_control_activated_thumb:I

:cond_d
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_b:I

:cond_e
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_g:I

:cond_f
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_o:I

:cond_10
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_r:I

:cond_11
sget v2, Lcom/android/systemui/R$color;->qs_tile_round_background_on_s:I

:goto_2
invoke-virtual , Landroid/content/res/Resources;->getColor(I)I

.line 490
invoke-direct , Lcom/android/systemui/settings/ToggleSliderView;->setDualSeekBarResources()V

.method public getNotificationNormalBgColor(I)I
.locals 5

if-eqz p1, :cond_1

if-eq p1, v1, :cond_0

.line 105
:cond_0
iget-object p0, p0, Lcom/android/systemui/noticolorpicker/NotificationColorPicker;->mContext:Landroid/content/Context;

sget p1, Lcom/android/systemui/R$color;->notification_material_background_dimmed_color:I

.line 102
:cond_1
iget-object p0, p0, Lcom/android/systemui/noticolorpicker/NotificationColorPicker;->mContext:Landroid/content/Context;

const-string v2, «am_ubcsu»

if-eq v2, v4, :cond_2

if-eq v2, v4, :cond_3

if-eq v2, v4, :cond_4

if-eq v2, v4, :cond_5

if-eq v2, v4, :cond_6

if-eq v2, v4, :cond_7

:cond_2
sget p1, Lcom/android/systemui/R$color;->notification_material_background_color:I

:cond_3
sget p1, Lcom/android/systemui/R$color;->qs_tile_round_background_n_b:I

:cond_4
sget p1, Lcom/android/systemui/R$color;->qs_tile_round_background_n_g:I

:cond_5
sget p1, Lcom/android/systemui/R$color;->qs_tile_round_background_n_o:I

:cond_6
sget p1, Lcom/android/systemui/R$color;->qs_tile_round_background_n_r:I

:cond_7
sget p1, Lcom/android/systemui/R$color;->qs_tile_round_background_n_s:I

:goto_0
invoke-virtual , Landroid/content/res/Resources;->getColor(ILandroid/content/res/Resources$Theme;)I

:goto_1
return p0
.end method

Скачать : GearUtils.zip ( 1.67 КБ )

Сообщение отредактировал Wlryss — 30.09.21, 07:58

Алексей может действительно не смотрел скрин? 🙂
Там разные скрины. DPI 560 в обоих скринах но, на втором полоски есть под значки.)
Если уменьшить DPI до 500, тогда более норм(как на втором скрине). Чуток пробелы есть. :yes:

Сообщение отредактировал MAOQ — 20.03.21, 16:32

MAOQ, это заметил

Добавлено 20.03.2021, 16:31:

alexega, полоски эти надо найти и обнулить либо в лайотах, либо где размер, скорее всего в лайотах ищи по id (если их красит ром контроль, то и путь найдёшь)

Систематизация гайдов ув. zmeeed2020 для Андроид 9 — Андроид 10 и изменения для применения с Андроид 11..

Устройство : Samsung S10+
Версия Андроид : Андроид 11
Прошивка : One UI 3.0-3.1

1. Скачиваем приложенный архив и размещаем файлы из архива в декомпилированном SystemUI. Некоторые смали из архива подкорректированы для использования с Андроид 11.
SystemUI_Guide_FonToggles_20_03.rar ( 849.56 КБ )

2. Добавляем в SystemUI — GearUtils — Инструкции по редактированию системных ресурсов (Пост Wlryss #104889640)
Примечание: рекомендуется добавить GearUtils.smali из приложенного архива, так как эти смали понадобятся в дальнейшем для модификации Количество тоглов в не развернутой шторке в ландшафтном и портретном режимах на лету. Андроид 11

3. В SystemUI/smali/com/android/systemui/qs/tileimpl/QSTileBaseView.smali добавляем в # instance fields:

.field private mGrxManageImageViews:Z

.field private final mGrxPredDim:Landroid/widget/ImageView;

.field private final mGrxPredOff:Landroid/widget/ImageView;

.field private final mGrxPredOn:Landroid/widget/ImageView;

.field private mGrxTintCircle:Z

— в методе .method public constructor (Landroid/content/Context;Lcom/android/systemui/plugins/qs/QSIconView;Z)V добавляем строку:

.method public constructor (Landroid/content/Context;Lcom/android/systemui/plugins/qs/QSIconView;Z)V
.locals 3

invoke-direct , Lcom/android/systemui/plugins/qs/QSTileView;-> (Landroid/content/Context;)V

new-instance p3, Lcom/android/systemui/qs/tileimpl/QSTileBaseView$H;

invoke-direct , Lcom/android/systemui/qs/tileimpl/QSTileBaseView$H;-> (Lcom/android/systemui/qs/tileimpl/QSTileBaseView;)V

iput-object p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mHandler:Lcom/android/systemui/qs/tileimpl/QSTileBaseView$H;

new-array p3, p3, [I

iput-object p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mLocInScreen:[I

sget v0, Lcom/android/systemui/R$dimen;->qs_quick_tile_padding:I

new-instance p3, Landroid/widget/FrameLayout;

invoke-direct , Landroid/widget/FrameLayout;-> (Landroid/content/Context;)V

iput-object p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

const v0, 0x10500b6

iput p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mStrokeWidthActive:F

const v0, 0x10500b7

iput p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mStrokeWidthInactive:F

sget v0, Lcom/android/systemui/R$dimen;->sec_style_qs_tile_icon_size:I

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

new-instance v1, Landroid/widget/LinearLayout$LayoutParams;

invoke-direct , Landroid/widget/LinearLayout$LayoutParams;-> (II)V

new-instance p3, Landroid/widget/ImageView;

invoke-direct , Landroid/widget/ImageView;-> (Landroid/content/Context;)V

iput-object p3, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

new-instance p3, Landroid/graphics/drawable/shapes/OvalShape;

invoke-direct , Landroid/graphics/drawable/shapes/OvalShape;-> ()V

new-instance v0, Landroid/graphics/drawable/ShapeDrawable;

invoke-direct , Landroid/graphics/drawable/ShapeDrawable;-> (Landroid/graphics/drawable/shapes/Shape;)V

sget v1, Lcom/android/systemui/R$dimen;->sec_style_qs_tile_background_size:I

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

new-instance v0, Landroid/widget/FrameLayout$LayoutParams;

const/16 v1, 0x11

invoke-direct , Landroid/widget/FrameLayout$LayoutParams;-> (III)V

iget-object p1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

iget-object p1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

iput-object p2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIcon:Lcom/android/systemui/plugins/qs/QSIconView;

new-instance p1, Landroid/widget/FrameLayout$LayoutParams;

invoke-direct , Landroid/widget/FrameLayout$LayoutParams;-> (III)V

iget-object p2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIcon:Lcom/android/systemui/plugins/qs/QSIconView;

iget-object p1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object p1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iput-object p1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mTileBackground:Landroid/graphics/drawable/Drawable;

instance-of p2, p1, Landroid/graphics/drawable/RippleDrawable;

if-eqz p2, :cond_0

check-cast p1, Landroid/graphics/drawable/RippleDrawable;

:cond_0
const/4 p1, 0x1

iget-object p2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIcon:Lcom/android/systemui/plugins/qs/QSIconView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mTileBackground:Landroid/graphics/drawable/Drawable;

iget-object p2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIcon:Lcom/android/systemui/plugins/qs/QSIconView;

— метод .method protected getCircleColor(I)I меняем на следующий:

.method protected getCircleColor(I)I
.locals 3

packed-switch p1, :pswitch_data_0

const-string v0, «QSTileBaseView»

new-instance v1, Ljava/lang/StringBuilder;

invoke-direct , Ljava/lang/StringBuilder;-> ()V

const-string v2, «Invalid state «

:pswitch_0
sget-boolean v0, Lcom/mods/sac/SacSettings;->sTileColorsEnabled:Z

if-eqz v0, :cond_0

sget v0, Lcom/mods/sac/SacSettings;->sTileCircleColorOn:I

:cond_0
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

:pswitch_1
sget-boolean v0, Lcom/mods/sac/SacSettings;->sTileColorsEnabled:Z

if-eqz v0, :cond_1

sget v0, Lcom/mods/sac/SacSettings;->sTileCircleColorOff:I

:cond_1
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorDisabled:I

:pswitch_2
sget-boolean v0, Lcom/mods/sac/SacSettings;->sTileColorsEnabled:Z

if-eqz v0, :cond_2

sget v0, Lcom/mods/sac/SacSettings;->sTileCircleColorDim:I

:cond_2
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorInactive:I

:pswitch_data_0
.packed-switch 0x0
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method

.method protected handleStateChanged(Lcom/android/systemui/plugins/qs/QSTile$State;)V
.locals 8

+++iget-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxTintCircle:Z

if-eqz v0, :cond_next

iget v0, p1, Lcom/android/systemui/plugins/qs/QSTile$State;->state:I

:cond_next
iget-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxManageImageViews:Z

if-eqz v0, :cond_next1

iget v0, p1, Lcom/android/systemui/plugins/qs/QSTile$State;->state:I

:cond_next1+++
invoke-direct , Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->updateStrokeShapeWidth(Lcom/android/systemui/plugins/qs/QSTile$State;)V

iget v0, p1, Lcom/android/systemui/plugins/qs/QSTile$State;->state:I

iget v2, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mCircleColor:I
.

— в конце смали добавляем методы:

.method public grxGetNewImageView()Landroid/widget/ImageView;
.locals 2

new-instance v0, Landroid/widget/ImageView;

invoke-direct , Landroid/widget/ImageView;-> (Landroid/content/Context;)V

sget-object v1, Landroid/widget/ImageView$ScaleType;->FIT_CENTER:Landroid/widget/ImageView$ScaleType;

return-object v0
.end method

.method public grxGetPredefinedImageView(I)Landroid/widget/ImageView;
.locals 2

new-instance v0, Landroid/widget/ImageView;

invoke-direct , Landroid/widget/ImageView;-> (Landroid/content/Context;)V

if-eq p1, v1, :cond_0

sget-object v1, Landroid/widget/ImageView$ScaleType;->FIT_CENTER:Landroid/widget/ImageView$ScaleType;

:cond_0
return-object v0
.end method

.method public grxSetCircleColor(I)V
.locals 2

iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

packed-switch p1, :pswitch_data_0

:goto_0
iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

:pswitch_0
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

:pswitch_1
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorDisabled:I

:pswitch_2
iget v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorInactive:I

:pswitch_data_0
.packed-switch 0x0
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method

.method public grxSetTileBackground()V
.locals 3

iput-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxTintCircle:Z

iput-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxManageImageViews:Z

sget-boolean v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTilesColorsEnabled:Z

if-nez v0, :cond_0

:cond_0
sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTilesBgType:I

packed-switch v0, :pswitch_data_0

:pswitch_1
sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileCircleOn:I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileCircleOff:I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorDisabled:I

sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileCircledDim:I

iput v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorInactive:I

new-instance v0, Landroid/widget/ImageView;

invoke-direct , Landroid/widget/ImageView;-> (Landroid/content/Context;)V

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

sget-object v1, Landroid/widget/ImageView$ScaleType;->FIT_CENTER:Landroid/widget/ImageView$ScaleType;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

sget v1, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileCircleBgId:I

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

iget v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mColorActive:I

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mBg:Landroid/widget/ImageView;

iput-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxTintCircle:Z

:pswitch_2
sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTilePredefBgDim:I

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTilePredefBgOffId:I

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

sget v0, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTilePredefBgId:I

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iput-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxManageImageViews:Z

:pswitch_3
invoke-virtual , Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->grxGetNewImageView()Landroid/widget/ImageView;

sget-object v1, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileBgCustomDimDrawable:Landroid/graphics/drawable/BitmapDrawable;

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

sget-object v1, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileBgCustomOffDrawable:Landroid/graphics/drawable/BitmapDrawable;

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

sget-object v1, Lcom/mods/grx/GrxNotiPanelModsSettings;->sGrxTileBgCustomDrawable:Landroid/graphics/drawable/BitmapDrawable;

iput-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iget-object v1, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mIconFrame:Landroid/widget/FrameLayout;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iput-boolean v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxManageImageViews:Z

:pswitch_data_0
.packed-switch 0x0
:pswitch_0
:pswitch_1
:pswitch_2
:pswitch_3
.end packed-switch
.end method

.method public grxUpdateImageViews(I)V
.locals 2

packed-switch p1, :pswitch_data_0

:pswitch_0
const v1, 0x8

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

:pswitch_1
const v1, 0x8

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

:pswitch_2
const v1, 0x8

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOff:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredOn:Landroid/widget/ImageView;

iget-object v0, p0, Lcom/android/systemui/qs/tileimpl/QSTileBaseView;->mGrxPredDim:Landroid/widget/ImageView;

:pswitch_data_0
.packed-switch 0x0
:pswitch_2
:pswitch_1
:pswitch_0
.end packed-switch
.end method

4. В SystemUI/smali\com\android\systemui\qs\tileimpl\QSTileImpl.smali меняем метод .method public static getColorForState(Landroid/content/Context;I)I на следующий:

.method public static getColorForState(Landroid/content/Context;I)I
.locals 5

if-eqz p1, :cond_2

if-eq p1, p0, :cond_1

if-eq p1, p0, :cond_0

new-instance p0, Ljava/lang/StringBuilder;

invoke-direct , Ljava/lang/StringBuilder;-> ()V

const-string v0, «Invalid state «

const-string p1, «QSTile»

:cond_0
const-string/jumbo v3, «text_color_on»

const v4, -0xf0f0f1

:cond_1
const-string/jumbo v3, «text_color_off»

const v4, -0xf0f0f1

:cond_2
const-string/jumbo v3, «text_color_dis»

const v4, -0xf0f0f1

5. В SystemUI/smali_classes2/com/android/systemui/statusbar/phone/StatusBar.smali

[- Добавляем две строки:

.class public Lcom/android/systemui/statusbar/phone/StatusBar;
.super Lcom/android/systemui/SystemUI;
.source «StatusBar.java»

# interfaces
.implements Lcom/android/systemui/DemoMode;
.implements Lcom/android/systemui/plugins/ActivityStarter;
.implements Lcom/android/systemui/statusbar/policy/KeyguardStateController$Callback;
.implements Lcom/android/systemui/statusbar/policy/OnHeadsUpChangedListener;
.implements Lcom/android/systemui/statusbar/CommandQueue$Callbacks;
.implements Lcom/android/internal/colorextraction/ColorExtractor$OnColorsChangedListener;
.implements Lcom/android/systemui/statusbar/policy/ConfigurationController$ConfigurationListener;
.implements Lcom/android/systemui/statusbar/phone/StatusBarObjectProvider;
.implements Lcom/android/systemui/plugins/statusbar/StatusBarStateController$StateListener;
.implements Lcom/android/systemui/statusbar/notification/ActivityLaunchAnimator$Callback;
.implements Lcom/android/systemui/statusbar/notification/row/NotifDoubleTapListener;
.implements Lcom/android/systemui/statusbar/HeadsupDragAndDropHelper$HunDragCallback;
.implements Lcom/android/wubydax/GearContentObserver$OnContentChangedListener;

# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = <
Lcom/android/systemui/statusbar/phone/StatusBar$H;,
Lcom/android/systemui/statusbar/phone/StatusBar$StatusBarUiEvent;, . Добавляем запятую.
+++ Lcom/android/systemui/statusbar/phone/StatusBar$GrxNotiPanelModsObserver;,
Lcom/android/systemui/statusbar/phone/StatusBar$SacObserver;+++
>
.end annotation

— В методе .method public start()V добавляем:

.method public start()V
.locals 12

new-instance v0, Lcom/mods/grx/GrxSbStockIconsColors;

iget-object v1, p0, Lcom/android/systemui/statusbar/phone/StatusBar;->mContext:Landroid/content/Context;

invoke-direct , Lcom/mods/grx/GrxSbStockIconsColors;-> (Landroid/content/Context;)V

iget-object v0, p0, Lcom/android/systemui/statusbar/phone/StatusBar;->mScreenLifecycle:Lcom/android/systemui/keyguard/ScreenLifecycle;

— В конце добавляем метод:

.method public sacSetUpVars()V
.locals 2

new-instance v0, Lcom/android/systemui/statusbar/phone/StatusBar$SacObserver;

new-instance v1, Landroid/os/Handler;

invoke-direct , Landroid/os/Handler;-> ()V

invoke-direct , Lcom/android/systemui/statusbar/phone/StatusBar$SacObserver;-> (Lcom/android/systemui/statusbar/phone/StatusBar;Landroid/os/Handler;)V

iget-object v0, p0, Lcom/android/systemui/statusbar/phone/StatusBar;->mContext:Landroid/content/Context;

6. В SystemUI/smali/com/android/systemui/SystemUI.smali — удаляем строку и вместо неё прописываем другую:

.class public abstract Lcom/android/systemui/SystemUI;
.super Ljava/lang/Object;
.source «SystemUI.java»

# instance fields
### .field protected final mContext:Landroid/content/Context; . Удалить строку

.field public mContext:Landroid/content/Context; ### . Добавить строку

.field private mFlipfont:I

# direct methods
.method public constructor (Landroid/content/Context;)V
.locals 1

invoke-direct , Ljava/lang/Object;-> ()V

iput v0, p0, Lcom/android/systemui/SystemUI;->mFlipfont:I

iput-object p1, p0, Lcom/android/systemui/SystemUI;->mContext:Landroid/content/Context;

.method public static overrideNotificationAppName(Landroid/content/Context;Landroid/app/Notification$Builder;Z)V
.locals 1

new-instance v0, Landroid/os/Bundle;

invoke-direct , Landroid/os/Bundle;-> ()V

if-eqz p2, :cond_0

const p2, 0x1040732

:cond_0
const p2, 0x1040731

:goto_0
const-string p2, «android.substName»

# virtual methods
.method public dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
.locals 0

.method protected onBootCompleted()V
.locals 0

.method protected onConfigurationChanged(Landroid/content/res/Configuration;)V
.locals 2

if-eqz p1, :cond_0

iget v0, p1, Landroid/content/res/Configuration;->FlipFont:I

if-lez v0, :cond_0

iget v1, p0, Lcom/android/systemui/SystemUI;->mFlipfont:I

if-eq v1, v0, :cond_0

iget p1, p1, Landroid/content/res/Configuration;->FlipFont:I

iput p1, p0, Lcom/android/systemui/SystemUI;->mFlipfont:I

:cond_0
return-void
.end method

.method public onTrimMemory(I)V
.locals 0

.method public abstract start()V
.end method

II. Ром Контрол типа GRX

1. В нужную xml добавляем:

Источник

Читайте также:  Видеоредактор с титрами для андроид
Оцените статью