lihenggui / blocker Goto Github PK
View Code? Open in Web Editor NEWUtilize an integrated firewall to manage application components.
License: Apache License 2.0
Utilize an integrated firewall to manage application components.
License: Apache License 2.0
首先我是安卓12MIUI13Blocker1.1.53的用户。
第一,图标与酷安的不同?虽然这和高级搜索没有什么关系,即使点击搜索栏的❌。
第二,当搜索框空白时会展示所有服务,当我输入再删除后。
第三,高级搜索的开关似乎没用,当在高级搜索里改变开关后,在应用程序列表里并没有变化,重新加载高级搜索后该开关却是变成初始的状态。反过来,在应用程序列表里改变开关状态,高级搜索里就正常显示,同时发现一个问题如下。
第四,当加载高级搜索列表后,再在应用程序列表里改变开关状态,高级搜索开关状态并未改变,但只要重新加载就发现是改变了的。
综上所述,高级搜索是否暂时只是一个摆设,或者是该死的MIUI13搞得鬼。
另外,大佬加油!
i want to select app images
that are inside apps & extract them
Is it possible to make Blocker as system app and use it without root?
maybe put the blocker apk to /system/priv-app/
and whitelist required permissions to a file under /system/etc/permissions/
?
https://source.android.com/devices/tech/config/perms-whitelist
could it call pm
, cmd package
or read/write to /data/system/ifw/
then?
https://developer.android.com/reference/android/Manifest.permission#CHANGE_COMPONENT_ENABLED_STATE
Allows an application to change whether an application component (other than its own) is enabled or not.
Not for use by third-party applications.
Constant Value: "android.permission.CHANGE_COMPONENT_ENABLED_STATE"
Is it possible to use this to enable/disable app components?
if this could work, we can package Blocker as a Magisk module, or make it TWRP flashable.
Since google seems don't want this kind of app on Play Store, Magisk repo probably could be a better place if Blocker could works this way. 🤔
After restoring backups, it will show multiple launcher icons on the screen.
这App很好,但是对于新手来说门槛较高,像3ctools或myAndroidtools这些有明确指向(如哪一些属于自启动的),所以我想把您的这个App和myAndroidtools混用,可以吗?
Add a new kind of ruleset that:
Optional, but it will be better if these feature get added in this app:
Use the well-designed UI to replace the current one.
Design link: https://www.figma.com/file/T903MNmXtahDVf1yoOgXoI/Blocker
Designer: @COPtimer
No response
写轮眼就有这个功能,方便查看一些广告活动,差不多可以完全替代写轮眼了
感谢开发的软件,感觉还是挺有意思的,虽然还是没怎么搞懂应该怎么用才好.
手机一加5T, blocker版本最新版的测试版1.2.55-alpha
备份设置里有设置保存目录,
点开程序之后 到处规则没问题, 导入规则直接提示失败,请检查是否获得了权限.
导出导入IFW规则没问题.
点了一下应用信息查看权限,是写着:未请求任何权限.
然后就是 高级搜索--线上规则 net work call has failed for a following reason: 404 not found. 在线规则源从gitee跟github都不行.
这个功能还没正式开放?
现在就碰上了这两个问题,求个解.
1.有的app组件名称比较长,一行显示不完整,可以自动换行显示吗?
2.建议在每个receiver下面显示这个receiver关联的action,然后可以根据相同的action事件,列每个app的receiver,参考写轮眼,有这个功能我就可以把写轮眼弃了
感觉规则不能直接在线选择很不方便呢~
使用 ifw 禁用 providers 没有任何效果,也没有写入到相应的.xml文件中
因为不知道每个包名的作用。有啥办法吗
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
com.google.protobuf:protobuf-kotlin-lite
, com.google.protobuf:protoc
, com.google.devtools.ksp
, com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin
, org.jetbrains.kotlin.plugin.parcelize
, org.jetbrains.kotlin.plugin.serialization
, org.jetbrains.kotlin.jvm
, org.jetbrains.kotlin:kotlin-gradle-plugin
, org.jetbrains.kotlin:kotlin-stdlib-jdk8
).github/workflows/Build.yaml
actions/checkout v3
gradle/wrapper-validation-action v1
actions/setup-java v3
gradle/gradle-build-action v2.7.1
actions/upload-artifact v3
actions/upload-artifact v3
actions/upload-artifact v3
actions/upload-artifact v3
zhaobozhen/apk-info-action 1.1.2
actions/upload-artifact v3
actions/upload-artifact v3
actions/checkout v3
actions/setup-java v3
gradle/gradle-build-action v2.7.1
reactivecircus/android-emulator-runner v2
actions/upload-artifact v3
actions/checkout v3
actions/setup-java v3
gradle/gradle-build-action v2.7.1
android-actions/setup-android v2
actions/upload-artifact v3
.github/workflows/Release.yml
actions/checkout v3
gradle/wrapper-validation-action v1
actions/setup-java v3
gradle/gradle-build-action v2.7.1
zhaobozhen/apk-info-action 1.1.2
mikepenz/release-changelog-builder-action v4.0.0-b02
actions/upload-artifact v3
actions/upload-artifact v3
actions/upload-artifact v3
r0adkll/upload-google-play v1.1.1
softprops/action-gh-release v1
gradle.properties
settings.gradle.kts
build.gradle.kts
app/build.gradle.kts
app-compose/build.gradle.kts
benchmarks/build.gradle.kts
build-logic/gradle.properties
build-logic/settings.gradle.kts
build-logic/convention/build.gradle.kts
core/analytics/build.gradle.kts
core/common/build.gradle.kts
core/component-controller/build.gradle.kts
core/data/build.gradle.kts
core/data-test/build.gradle.kts
core/database/build.gradle.kts
core/datastore/build.gradle.kts
core/datastore-test/build.gradle.kts
core/designsystem/build.gradle.kts
core/domain/build.gradle.kts
core/ifw-api/build.gradle.kts
core/model/build.gradle.kts
core/network/build.gradle.kts
core/provider/build.gradle.kts
core/rule/build.gradle.kts
core/testing/build.gradle.kts
core/ui/build.gradle.kts
feature/appdetail/build.gradle.kts
feature/applist/build.gradle.kts
feature/generalrule/build.gradle.kts
feature/ruledetail/build.gradle.kts
feature/search/build.gradle.kts
feature/settings/build.gradle.kts
gradle/init.gradle.kts
com.diffplug.spotless:spotless-plugin-gradle 6.20.0
gradle/libs.versions.toml
com.google.accompanist:accompanist-permissions 0.33.0-alpha
com.google.accompanist:accompanist-testharness 0.33.0-alpha
com.google.accompanist:accompanist-navigation-animation 0.33.0-alpha
com.google.accompanist:accompanist-navigation-material 0.33.0-alpha
com.android.tools:desugar_jdk_libs 2.0.3
androidx.activity:activity-compose 1.8.0-alpha07
androidx.appcompat:appcompat 1.6.1
androidx.benchmark:benchmark-macro-junit4 1.2.0-beta04
androidx.browser:browser 1.6.0
androidx.compose:compose-bom 2023.08.00
androidx.compose.material:material 1.5.0
androidx.compose.material3:material3 1.2.0-alpha06
androidx.compose.material3:material3-window-size-class 1.2.0-alpha06
androidx.compose.runtime:runtime-tracing 1.0.0-alpha04
androidx.core:core-ktx 1.10.1
androidx.core:core-splashscreen 1.0.1
androidx.datastore:datastore 1.0.0
androidx.documentfile:documentfile 1.0.1
androidx.hilt:hilt-navigation-compose 1.0.0
androidx.lifecycle:lifecycle-livedata-ktx 2.6.1
androidx.lifecycle:lifecycle-runtime-compose 2.6.1
androidx.lifecycle:lifecycle-viewmodel-compose 2.6.1
androidx.metrics:metrics-performance 1.0.0-alpha04
androidx.navigation:navigation-compose 2.7.1
androidx.navigation:navigation-testing 2.7.1
androidx.palette:palette-ktx 1.0.0
androidx.profileinstaller:profileinstaller 1.3.1
androidx.startup:startup-runtime 1.1.1
androidx.window:window 1.1.0
androidx.test:core 1.5.0
androidx.test.ext:junit-ktx 1.1.5
androidx.test.espresso:espresso-core 3.5.1
androidx.test:runner 1.5.2
androidx.test:rules 1.5.0
androidx.test.uiautomator:uiautomator 2.2.0
androidx.tracing:tracing-ktx 1.1.0
androidx.work:work-runtime-ktx 2.9.0-alpha02
androidx.work:work-testing 2.9.0-alpha02
me.zhanghai.android.appiconloader:appiconloader 1.5.0
me.zhanghai.android.appiconloader:appiconloader-coil 1.5.0
io.coil-kt:coil 2.4.0
io.coil-kt:coil-compose 2.4.0
io.coil-kt:coil-svg 2.4.0
com.google.firebase:firebase-bom 32.2.3
com.google.firebase:firebase-crashlytics-gradle 2.9.9
com.google.firebase:perf-plugin 1.4.2
com.google.android.material:material 1.9.0
com.google.gms:google-services 4.3.15
com.google.android.gms:play-services-oss-licenses 17.0.1
com.google.android.gms:oss-licenses-plugin 0.10.6
com.google.dagger:hilt-android 2.47
androidx.hilt:hilt-work 1.0.0
androidx.hilt:hilt-compiler 1.0.0
com.google.dagger:hilt-android-compiler 2.47
com.google.dagger:hilt-android-testing 2.47
junit:junit 4.13.2
org.jetbrains.kotlin:kotlin-stdlib-jdk8 1.9.0
org.jetbrains.kotlinx:kotlinx-coroutines-android 1.7.3
org.jetbrains.kotlinx:kotlinx-coroutines-guava 1.7.3
org.jetbrains.kotlinx:kotlinx-coroutines-test 1.7.3
org.jetbrains.kotlinx:kotlinx-datetime 0.4.0
org.jetbrains.kotlinx:kotlinx-serialization-json 1.6.0
com.github.topjohnwu.libsu:core 5.2.0
com.github.topjohnwu.libsu:io 5.2.0
com.android.tools.lint:lint-api 31.1.1
com.squareup.okhttp3:logging-interceptor 4.11.0
com.google.protobuf:protoc 3.24.1
com.google.protobuf:protobuf-kotlin-lite 3.24.1
app.cash.turbine:turbine 1.0.0
com.squareup.retrofit2:retrofit 2.9.0
com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter 1.0.0
androidx.room:room-runtime 2.5.2
androidx.room:room-ktx 2.5.2
androidx.room:room-compiler 2.5.2
dev.rikka.shizuku:api 13.1.4
dev.rikka.shizuku:provider 13.1.4
io.github.pdvrieze.xmlutil:core-android 0.86.1
io.github.pdvrieze.xmlutil:serialization-android 0.86.1
com.jakewharton.timber:timber 5.0.1
com.github.tiann:FreeReflection 3.2.0
com.android.tools.build:gradle 8.3.0-alpha01
org.jetbrains.kotlin:kotlin-gradle-plugin 1.9.0
com.google.devtools.ksp:com.google.devtools.ksp.gradle.plugin 1.9.0-1.0.13
com.google.android.material:material 1.9.0
com.android.application 8.3.0-alpha01
com.android.library 8.3.0-alpha01
com.android.test 8.3.0-alpha01
com.google.firebase.crashlytics 2.9.9
com.google.firebase.firebase-perf 1.4.2
com.google.gms.google-services 4.3.15
com.google.devtools.ksp 1.9.0-1.0.13
com.google.dagger.hilt.android 2.47
org.jetbrains.kotlin.jvm 1.9.0
org.jetbrains.kotlin.plugin.serialization 1.9.0
org.jetbrains.kotlin.plugin.parcelize 1.9.0
com.google.protobuf 0.9.4
com.google.android.libraries.mapsplatform.secrets-gradle-plugin 2.0.1
lint/build.gradle.kts
sync/sync-test/build.gradle.kts
sync/work/build.gradle.kts
ui-test-hilt-manifest/build.gradle.kts
gradle/wrapper/gradle-wrapper.properties
gradle 8.3
使用ifw禁用的组件是无法复活的,效果比类似MAT的方法的效果要好很多,所以请开发者考虑一下能否将ifw作为默认禁用模式。
Add an additional filter to the main window in the sorting, i.e. running services
Adding work profile apps support make it even more better for privacy
对于毒瘤应用,有时我们会倾向于安装在容器中,例如island。blocker有没有可能控制容器中app的行为?
为什么自编译的还没酷安的好用?界面点不动,配色感觉也有问题。
issues
maybe people are too lazy to have dependencies to pc only for repack apk and install apk in T
(Test Only)
Solution
Implement Repack apk in test mode and install in test mode thought the app
references
how to instal test only version apk file?
command used either with or without adb shell
(without shell: adb install -t name.apk)
(with shell: adb shell pm install -t name.apk
When I try to disable any component I get a long series of errors starting with:
java.lang.RuntimeException: Problem connect to shizuku server
However shizuku is activated by adb and running.
Blocker does not appear in the list of authorized apps in Shizuku settings
规则导出完成后,通知栏显示“xxx 已导入”。
英文版 %1$d jobs were done
是正确的,简中或繁中则是错误的%1$d 已导入
、%1$d 已匯入
。
建议拆分字符串,或者xxx 项已完成
、xxx 项处理完成。
之类的。
Hello
I was looking around for docs on this app and found the repo
But I don't speak Chinese so I can't read the README
Hi @lihenggui
Thanks for the update.
I get another issue regarding the appearance of contents inside tabs (service, activity, receiver & content provider), they don't fully shown. I use blocker 1.1.53. My device OS is stock 6.0.1
Blocker did not do any adaptation to tablets, it is necessary to do that
EDIT:
for if Android 11 and target api 30
concluded 4:
requestLegacyStorage
, as it is deprecated on target 30, it is for up to target 29File
access api, as for api 29=+ scoped storageMediaStore
available on api 30=+ (due to Android 10 problems), then api 29 uses SAF
i'm working on modern storage practices https://github.com/NewBugger/blocker-Android/commit/fbff816 , it more test needed done. available on even Android 11
about Storage Permission
:
https://developer.android.com/training/data-storage/shared/media#media-location-permission
I have been using this app for a while and it's very useful.
thanks for making this great app and open source it!
blocks is a good alternative to MyAndroidTools which seems proprietary and outdated, I usually recommend others to use Blocker when I see them using MyAndroidTools. but some of them also don't prefer to download app from Play Store even this app does not contains GMS/GFS stuff.
can you make Blocker available on F-Droid?
seems Blocker is completely open source, the only problem could be the pre-build binary of Shizuku.
maybe consider build Shizuku from source, or create a build variant which build Shizuku stuff or just drop it in that variant?
其实是催更x
I notice that this repo doesn't provide prebuilt apks on GitHub. The last build was updated in 2018. Probably it's because the new version is not ready.
For those who are interested in the lastest code, I write a CI script and you may download apks here: https://gitlab.com/secure-system/blocker/-/pipelines
因为某些应用程序的各项 服务、广播接收器、活动和内容提供者 的命名有点令人难以理解,或者乍一眼看上去不知道其用途,所以希望加入自行对应用程序的各项 服务、广播接收器、活动和内容提供者 进行注释的功能,让用户可以更加方便地调教应用程序。不需要内置这些注释,因为这可能会引起某些争议或带来某些麻烦,仅提供 添加、编辑、导入、导出 注释的功能即可。
Hi, I was MyAndroidTools user, I decide to use this app since it's opensource.
I have a problem & confusion with the latest version from play store. When I see services section for e-mail app, EasTestAuthenticatorService shows on blocker as enabled by default while in myandroidtools it is disabled, idk which one is correct for this.
I also like to back up apps, sometimes using tb or directly copy apk file using explorer. I back up blocker at that time using tb, then uninstall it. However, when I restored it, the burger bar on upper left is gone, then after granting root permission, blocker force closed
I was testing it with xperia m4 stock 6.0.1 rooted with magisk 19.1
Thank you I really appreciate it
basis和prod版本有什么区别
现在的ifw方案都是把文件写入到/data/system/ifw/
下面,因此需要root权限。
但这个目录其实没有root的系统在adb下也可以写入。因此能否把文件写入到别处,然后让我们自己通过adb给弄过去。
Currently I'm using RxJava for thread scheduling, it will do the job, but it is complete overkill. Coroutine is a better replacement.
i've had a fork, so i provide you a patch, based on your legacy branch. @lihenggui
Running Android 11 beta on a Pixel 3a
I tried Blocker with Shizuku Manager and every time I toggled any receivers, activies, services, or content providers I would get an error thrown.
My other question is - If it does work, will I have to run the Shizuku Manager adb script every time I reboot my device?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.