V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  murmurkerman  ›  全部回复第 1 页 / 共 2 页
回复总数  38
1  2  
可以自己写插件加载,其实很简单的。只需要用 DelegateLastClassloader 加载插件 apk 的 dex 和 so ,复制插件 androidmanifest 到宿主应用。我之前写过类似的代码,对指定业务场景可用。你可以看看你的应用
在这个企业应用中加上强制的更新弹窗即可。用插件有点麻烦。插件缺点就是每次应用启动都得加载一遍,还是要以发版形式更新应用比较合适。
哈哈哈 4090 16k ,玩游戏的话捡一个 30 系列显卡 3k 4k 差不多了 3080 ~= 4070
这玩意难用,还不如关掉去 bios 改风扇曲线
你要是不会 ADB, SSH 和穿透的话。你的办公室需要有一台电脑开启远程访问。然后把手机连接上办公室电脑,装下 scrcpy 即可。

常见 ADB 命令:
1. 解锁手机:
adb shell input keyevent 62
输入密码:
adb shell input text 解锁密码
2. 锁屏:
adb shell input keyevent 26
3. 打开应用
adb shell am start -a android.intent.action.MAIN -c android.intent.category.LAUNCHER --activity-clear-task -n com.ss.android.lark/.main.app.MainActivity
4. 关闭应用
adb shell am force-stop com.ss.android.lark
如果应用没有用 9.0 新功能的话,应该没问题。

如果你有 apk 。你需要 ApkTool:
1. 用 ApkTool 解 Apk
`apktool d app.apk -o app_decompiled`
app.apk 是你的 apk 文件路径,app_decompiled ,放置解包后的产物
大致输出如下:
app_decompiled
├── AndroidManifest.xml
├── META-INF
├── apktool.yml
├── assets
├── kotlin
├── lib
├── original
├── res
├── smali
├── smali_classes2
├── smali_classes3
└── unknown

2. 修改 apktool.yml 文件,这个是个文本文件
修改最低版本为 minSdkVersion: xxx 为 minSdkVersion: 24
修改前:

sdkInfo:
minSdkVersion: 35
targetSdkVersion: 35
修改后:

sdkInfo:
minSdkVersion: 24
targetSdkVersion: 35

3. 重新打包 Apk
apktool b app_decompiled -o app_modified.apk

4. 给 Apk 签名

用 keytool 生成签名密钥:
keytool -genkeypair -v \
-keystore my-release-key.jks \
-keyalg RSA -keysize 2048 -validity 10000 \
-alias my-key-alias

用 apksinger 签名 apk:
apksigner sign --ks my-release-key.jks --out app_signed.apk app_modified.apk

验证签名:
apksigner verify app_signed.apk

5. 安装测试

工具:
apktool: https://apktool.org/docs/the-basics/intro/
keytool: jdk 自带的工具,没有的话用 openssh
apksigner: android sdk 工具,https://developer.android.com/studio?hl=zh-cn#command-tools

有源代码的话,改下构建配置就好了。
39 天前
回复了 mario328 创建的主题 Android 为什么手机 DRM 等级会自动从 L1 下降到 L3
看看这条,我的 xperia 1 iv 是 l3 ,不过是解锁了 boot loader 和 root 了。看看这个: https://www.reddit.com/r/SonyXperia/comments/15vrhz4/widevine_disappointment/
42 天前
回复了 Yaoooo 创建的主题 分享创造 Moonshot
🌓🌓🌓🌓🌓🌓🌓🌓🌓🌓🌓🌓🌓🌓
🌗🌗🌗🌗🌗🌗🌗🌗🌗🌗🌗🌗🌗🌗
🌓🌓🌓🌓🌓🌓🌑🌑🌑🌓🌓🌓🌓🌓
🌗🌖🌖🌗🌗🌑🌑🌑🌑🌑🌘🌗🌗🌗
🌓🌔🌑🌓🌒🌑🌓🌔🌓🌑🌑🌓🌓🌓
🌗🌘🌑🌑🌑🌘🌖🌖🌖🌗🌑🌗🌗🌗
🌓🌑🌑🌑🌑🌒🌔🌔🌒🌓🌑🌓🌓🌓
🌘🌗🌖🌖🌑🌗🌗🌘🌖🌖🌘🌗🌘🌗
🌔🌔🌔🌓🌔🌔🌓🌒🌔🌔🌓🌓🌒🌓
🌖🌗🌖🌖🌖🌗🌗🌗🌖🌖🌑🌑🌘🌘
🌒🌓🌒🌒🌔🌔🌔🌔🌔🌓🌑🌑🌑🌒
🌖🌗🌖🌖🌗🌖🌗🌖🌖🌘🌘🌘🌗🌗
🌔🌔🌔🌔🌔🌓🌔🌔🌔🌔🌓🌔🌓🌓
🌖🌖🌗🌗🌖🌖🌖🌖🌖🌖🌕🌕🌖🌖
海鲜市场捡一个 sony xperia 。配置尚可,几乎原生,可以刷 aosp 。
你只能用 Android Studio, Intelij Idea 打开子项目。或者直接用 VsCode 。
73 天前
回复了 BrokenArrow 创建的主题 Android 关于安卓 windows 与 wifi direct 互传
如果 Nearby Share 用不了的话好像没有什么好的方案。
Nearby Share 用的就是 BLE 和 Wifi Direct 结合的方案,Nearby Share 是 Google 的私有软件,国内设备干掉了,现在也没有开源或者免费的 Wifi Direct 文件 Windows 、Android 文件分享方案。

国内最大指望就是 OEM 提供这些功能,比如小米和 OV 。https://connect.oppo.com 。或者上传到云盘。或者用 https://syncthing.net/这种同步方案。
要实现 CookieStorage 接口,参考 AcceptAllCookiesStorage 的实现,Copy 下代码,在每次修改 cookie 的时候保存到本地存储。存储形式可以是简单的序列化到 json 文件,也可以用 kv storage 。加不加密取决于你的应用安全要求,我现在是序列化到 EncryptedSharedPreferences
139 天前
回复了 wchluxi 创建的主题 问与答 大家有试过在安卓 pad 用 moonlight 吗?
这用来办公(打游戏)还不如用 steam remote play 。
如果只需要加密文件,不希望其他应用访问到,用谷歌的文件极客,需要输入密码才能访问。
如果只是查看文件到的话,wps 有个 xxx 文档查看器,OEM 定制的,可以打开 office 文档,但是没有历史页面。https://apkcombo.com/zh/%E5%B0%8F%E7%B1%B3%E6%96%87%E6%A1%A3%E6%9F%A5%E7%9C%8B%E5%99%A8-wps%E5%AE%9A%E5%88%B6/cn.wps.moffice_eng.xiaomi.lite/
这个是好的,加上 key 来保留滚动位置

@Preview
@OptIn(ExperimentalFoundationApi::class)
@Composable
fun VerticalPagerWithLazyColumn(
modifier: Modifier = Modifier
) {
val pagerState = rememberPagerState(
pageCount = {
5
}
)

VerticalPager(
state = pagerState,
key = { it },
modifier = modifier.fillMaxSize()
) { page ->
Box {
Column(
modifier = Modifier
.verticalScroll(rememberScrollState())
.fillMaxSize()

) {
for (i in 0..20) {
Text(
"Item $i on page $page",
modifier = Modifier.padding(30.dp)
)
}
}
Text(
"Page $page", modifier = Modifier
.padding(16.dp)
.align(Alignment.Center)
)
}
}
}
啊,这个不是好的么
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5546 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 51ms · UTC 08:37 · PVG 16:37 · LAX 00:37 · JFK 03:37
Developed with CodeLauncher
♥ Do have faith in what you're doing.