Android

Android Camera2前置摄像头的编码器输出Surface:在编码成H.264的 NAL单元中,物理倾斜角度似乎被放大了两倍——为什么?

我正在开发一个Android应用(Flutter/Kotlin),显示设备通过前置摄像头使用Camera2拍摄,并将H.264 NALs直接送入MediaCodec解码器以实现实时显示。编码后的帧也会保存为MP4。 问题: 它在前置摄像头上运行时表现不正确。当前置摄像头设备倾斜(例如3°)时,实时预览的图像应当朝相反方向倾斜,使画面保持直立,这一点与后置镜头相同。相反,图像却沿着与相机同方向倾斜,且倾斜角度是原来的一倍(6°)。这个6° 的倾斜是正确的,但方向被错用。这个倍增在保存的MP4文件中也能确认存

Android上翻转的图片

我发现上次出门时用手机拍的照片中,有一半被旋转了90度。 我试着用Google照片或Google文件来翻转它们,但我发现,首先,照片会被保存为一个副本,这会让编辑大量相似照片变得困难(它们很容易混淆),其次,图像以不同的质量保存(尺寸不同)。难道就没有一种在不改变画质、也不需要保存副本的情况下就能轻松翻转(转置)照片的方法吗? 解决方案 JPEG文件在元数据中包含旋转数据。编辑该字段,看看你所使用的查看应用是否会遵循该标志。

Gradle无法解析androidx.compose:compose-bom:2026.06.00

问题 我想把我的Jetpack Compose版本升级到最新的可用版本。 根据Compose BOM映射页面: https://developer.android.com/develop/ui/compose/bom/bom-mapping 最新的Compose BOM版本似乎是 2026.06.00。 然而,当我尝试在我的项目中使用它时,Gradle同步失败,错误如下所示: Failed to resolve: androidx.compose:compose-bom:2026.06.00 而无论如何尝

在Android Studio中运行Flutter代码时,它并不是在Android模拟器上运行,而是在一个弹出的外部窗口中运行

我刚刚安装了带Flutter插件的Android Studio,并把Android模拟器添加到了IDE,设为Google Pixel,但问题是当我运行代码时,它没有在Android模拟器中显示,而是在一个额外弹出的窗口中显示,如图所示。 解决方案 由于这是一个Flutter项目,你需要查看靠近运行配置的顶部栏。你会看到一个下拉菜单,里面有在哪里运行你的代码的选项。 你很可能把设置放在Chrome(网页端)上。点击下拉菜单,选择你已有的正在运行的模拟器,或者选择“打开”选项让它启动。

Android捕获Wi-Fi信道利用率,但总是返回过时的缓存值

如何在具备运营商特权且同时拥有前台服务的系统应用中捕获Wi‑Fi信道利用率? AOSP参考: AOSP Wi‑Fi信道利用率 下面是捕获Wi‑Fi信道利用率的步骤 Step-1 : 注册Wi‑Fi扫描结果更新广播动作,并监听扫描结果更新 Step-2 : 使用API每隔2 秒启动一次Wi‑Fi扫描(注:测试时从开发者选项关闭Wi‑Fi扫描节流) Step-3 : 一旦扫描完成并收到成功广播,使用API获取最近的Wi‑Fi扫描列表,并将扫描结果传递给计算Wi‑Fi信道利用率 Step-4 : 使用API获取

能不能让复选框和按钮触发OnKeyListener.onKey()?

我正在开发一个应用程序,其中包含多种表单和多个字段(如复选框、按钮和可编辑文本字段)。为了让用户也能够通过键盘的左右箭头在这些表单之间导航(即对 KeyEvent.KEYCODE_DPAD_LEFT → “跳到上一个字段”,对 KeyEvent.KEYCODE_DPAD_RIGHT → “跳到下一个字段”,以此类推),我为所有控件分配了相应的 OnKeyListener。 这对 EditText-字段工作正常,但对 CheckBox 和 Button 就不行。后者不会触发 OnKeyListener(尽管

Android 12上 Kivy的文件访问被拒绝

我在让Kivy的 FileChooserListView正常工作时遇到问题。 我的Python脚本: # check if on android and request permissions from sys import platform if platform == 'android': from android.permissions import request_permissions, Permission from android.storage import app_storage_pat

Android的 WebSocket问题

供参考,服务器的证书是由某个CA签发的。 今天我在Android中使用StompClient实现WebSocket,但连接会瞬间打开又关闭,并抛出以下错误: java.io.EOFException at okio.RealBufferedSource.require(RealBufferedSource.kt:199) at okio.RealBufferedSource.readByte(RealBufferedSource.kt:209) at okhttp3.internal.ws.WebSock

Android底部标签栏没有显示Material图标

我最近把我的项目更新到了 Expo 56,并决定迁移到使用 @react-navigation/bottom-tabs/unstable 的实验性原生底部标签页。 在iOS上使用 sfSymbol 时,一切都运行得很顺利,标签栏本身在Android上也能正常工作。然而,当使用 materialSymbol 时,Android上的图标不会显示。

Android 9在 SplashActivity启动时崩溃:ProviderInstaller失败后应用程序单例为空

我是后端开发人员,因此我的Android知识有限。我在努力判断这次崩溃是由我的应用初始化流程引起,还是由Android 9上的ProviderInstaller / Google Play服务行为所致。 应用在某些三星Android 9设备上启动时崩溃,恰好在 SplashActivity 启动后。 崩溃日志: Fatal Exception: java.lang.RuntimeException Unable to start activity ComponentInfo{Sample.Sample.p