Android应用开发笔记(3)

Installed Build Tools revision 31.0.0 is corrupted. Remove and install again using the SDK Manager.

Build Tools 31.0.0缺少dx.bat和lib\dx.jar, 从30拷一份过去就行.
Google, 你能长点心吗
参考: https://www.cnblogs.com/yongfengnice/p/15272077.html

通知图标变为小白块

Android 5.0 之后, 谷歌为了使通知栏图标更加统一, 小图标必须是背景镂空只包含黑白两色的透明图片, 否则出错会变成小白块

RemoteViews布局未使用应用主题

RemoteViews中的布局(例如通知和桌面微件)默认没有采用应用的主题, 需要手动指定android:theme

WorkManager将网络受限视为无网络连接而不执行工作

原生Android请求google服务器获取当前网络是否可用, 而中国大陆是访问不了google的, 好在可以通过ADB修改

输入以下命令将服务器改为小米的:

adb shell settings put global captive_portal_http_url http://connect.rom.miui.com/generate_204
adb shell settings put global captive_portal_https_url https://connect.rom.miui.com/generate_204

参考: https://blog.csdn.net/asdrt12589wto1/article/details/115965281

在应用中嵌入系统浏览器页面

这里并不是常规的打开浏览器或是嵌入WebView视图, 而是AndroidX新推出的browser库, 它对Chrome新推出的custom-tabs功能提供了支持

集成指南(需要魔法): https://developer.chrome.com/docs/android/custom-tabs/integration-guide/

如果你是在应用处于后台时打开页面不要忘记给CustomTabsIntent#intent加上Intent.FLAG_ACTIVITY_NEW_TASK标志位

这功能我找了半天才找到, 之前还好奇别的APP都是怎么做到的呢, 要是Android开发者文档的指南里有链接就好了, 另外吐槽一下中文版的开发者文档是真的落后, 最好看英文的

打包后的APK没有压缩动态链接库

最小SDK版本高于23时默认不压缩库, 需要在清单文件中指定android:extractNativeLibs="false"

不过我觉得如果应用不大的话还压缩是弊大于利的, 因为解压出来还要额外占用好多空间

参考: https://blog.csdn.net/xiaxl/article/details/115253074

标题: Android应用开发笔记(3)
作者: QingChenW
链接: https://dawncraft.cc/2022/01/327/
本文遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 许可
禁止商用, 非商业转载请注明作者及来源!
上一篇
下一篇
隐藏