以Avalonia作为UI载体,AI代打C#与平台原生交互,直接请求权限,完全使用C#实现手机上不难实现但就是没有的功能.
安卓/苹果客户端对大部分开发者来说都有着天然而诡异的护城河.因此大部分开发者也难以直接控制自己每天使用频率都很高的设备.
而现代C#/.NET有着强大的跨平台能力,且开发效率高的离谱,Avalonia又支持跨移动端;VisualStudio部署Avalonia安卓应用体验甚至比AndroidStudio写原生还好(画面交互另说),AI写的Mono.Android代码自己对照谷歌的安卓文档改改基本能用,于是完全可以借助这些快速实现及定制一个按照自己意愿控制手机的工具.
本项目主要目的也是探索用C#直接请求安卓所有需要的权限能做出什么有趣的东西出来,用代码带来笑容,不是一板一眼地追求规范.如果大家想到了什么有意思的玩法可以直接提PR往上面堆,做个大集合.届时也会补全相关的配置画面或功能的画面.
由于这里的原则就是直接申请各种方便的权限直接达成目的,作为开发者完全知道自己在干什么,可以无脑放行.当然,请求一堆这种权限也不太可能发APP上架商店了.本项目不准备发apk,大伙直接VS部署即可.很快.
由于请求部分权限比较危险,为保护用户隐私,此项目不会使用连接网络相关的东西,也在安卓的Manifest中删除了Internet权限.
不可能不删!!!!!
(如果确实有些玩法需要联网,那么可能另外仓库单独给相关功能了)
苹果部分没做,感觉应该可以用类似手段.TODO
在VS中编辑src\ItsMyHu.Android\Assets\config.json,然后用VS2026Run在你的设备上.(详细启动项目的方法可见下一节)
比如下面的配置产生的效果就是在使用包名为com.sonymobile.android.contacts的App产生了WindowStateChanged事件(一般是在切换到前台时)会被无障碍逮捕.此时会检查包名是否在Json中注册过.有的场合,会在(bounds属性)距离屏幕左边18%,距上方100%-250px,距左边18%+350px,距上边100%的位置贴上src\ItsMyHu.Android\Assets\目录下的(image属性)zhihu.png图片.
{
"com.sonymobile.android.contacts": [
{
"type": "image",
"positioning": "relative",
"bounds": [ "18%", "100%-250", "18%+350", "100%" ],
"image": "zhihu.png"
}
]
}关于type和positioning是ai写的,后面根据情况会扩充完善.或者大伙完全可以自己写.
App的包名大家完全可以问AI.或者完全可以调试运行在OnAccessibilityEvent函数内部打断点查看.
特别声明: 为了大家的福祉,请务必不要用这个功能去遮红点遮头像.
- git clone本仓库
- 用你的VS2026打开slnx,将.Android设置为启动项目
- 你的手机没有打开
开发者模式及USB调试的场合,问问AI怎么做,保证开启这些 - 连上你的数据线,并且保证选择 文件传输模式
- 在刚才选启动项目的右边下拉选择要部署的设备,直接Run,然后坐和放宽
- 手机上出现画面并且在请求权限,说明你做对了.
- 权限请求和李○跳等软件类似,需要选择允许的App.目前打开软件会连续2个权限的请求.
辅助功能,找到MyHu遮罩,点进去打开使用情况访问权限,找到ItsMyHu进去点允许
TODO
