问题标签 [android-8.0-oreo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Context.startForegroundService() 没有调用 Service.startForeground()
我Service
在 Android O 操作系统上使用 Class。
我打算Service
在后台使用。
Android文档指出
如果您的应用程序以 API 级别 26 或更高级别为目标,则系统会对使用或创建后台服务施加限制,除非应用程序本身位于前台。如果应用需要创建前台服务,应用应该调用
startForegroundService()
.
如果使用startForegroundService()
,则会Service
引发以下错误。
这有什么问题?
android - Android Studio 无法识别 ShortcutManager 类
我正在研究使用 Android O 创建快捷方式。不幸的是,Android Studio 无法识别 ShortcutManager 类:
在我设置为依赖项的 gradle 文件中:
在 gradle 文件中,我设置了以下版本:
我已按照此SO 响应中的步骤执行了File => Invalidate Caches / Restart...
不幸的是,Android Studio 仍然无法识别该类。
关于我的 Android Studio 版本的信息:
尝试手动导入类不成功:
android - 升级到编译 sdk 版本后 findViewById 出错
升级到编译SDK
26版后,全部findViewById
报错:
没有足够的信息来推断 fun findViewById(id: Int): T 中的参数 T!
android - Android O 中的广播充电器断开连接
现在,Android O 的最终 API 已经发布,并且以下广播都没有被列入白名单,我遇到了以下问题:
在我的应用程序(目标 API 25)中,我目前有一个BroadcastReceiver
监听 和 的系统ACTION_POWER_CONNECTED
事件ACTION_POWER_DISCONNECTED
。现在我想更新我的应用程序以针对 Android O,但随着这个版本的发布,广播行为发生了巨大变化:
以 Android O 为目标的应用无法再在其清单中为隐式广播注册广播接收器。隐式广播是不专门针对该应用程序的广播。
由于这两个广播都是隐式的,我只能通过该Context.registerReceiver()
方法为它们注册,但随之而来的问题是:一旦我的应用程序的进程被系统杀死或系统清除了我的应用程序的内存(由于低-设备内存)广播注册将丢失。
为了避免这个问题,我可以将JobScheduler
API 与setRequiresCharging
方法一起使用,ACTION_POWER_CONNECTED
但ACTION_POWER_DISCONNECTED
我必须使用registerReceiver
方法。
由于我的应用程序控制设备的音量(基于这些事件),因此不会错过任何这些事件非常重要。那么如何在 Android O 中安全地监听断开电源事件呢?
顺便提一句。我对 WIFI 断开连接事件有同样的问题。
编辑:我很乐意在没有前台服务通知的情况下执行此操作
android - 使用 Android O 上的服务限制在后台检查电池电量
我有一个监控电池电量的应用程序,但我担心如何在即将推出的 Android O 版本上工作,并在后台进行服务限制。任何提示或想法都会对我有很大帮助。
谢谢。
java - 如何使用“长”颜色?
Android API 26 引入了处理颜色的新方法:
颜色 long 是 Android O 中引入的一种表示形式,用于将颜色存储在不同的颜色空间中,比颜色整数更精确。
现在我们可以使用新的色彩空间,如下所示:
不错,颜色很长。怎么办?
- 不能用于_
android.graphics.Canvas
- 不能用于_
android.graphics.Paint
- 不能用于_
android.graphics.Bitmap
绘图时我应该如何使用长颜色?
例如:
google-chrome - 运行 Chrome 浏览器后,Android O Emulator 崩溃并自行关闭
我在 Linux (Debian x64) 上,我决定测试来自 Google 的新 Android O 模拟器。基本上,它工作正常。但是每当我尝试运行 Chrome 浏览器时,模拟器就会崩溃并立即自行关闭,而不会出现任何错误消息。模拟器是 Android O x86,带有 Google 服务。
任何人都可以确认这一点,也许有人知道任何解决方法吗?我的应用程序使用 Chrome 作为 Facebook 登录的后端,所以我无法调试它。
[编辑] 所以我尝试从命令行运行模拟器,我看到它抛出了分段错误错误。
android - 如何在带有 Android 8 的模拟器上通过 Google Play Services 11 使用 Google Maps Android API
我想在 Android 8 模拟器上运行我的 Google 地图应用程序。正如 Google 建议的那样,应该使用第 11 版中 Google Play Services 提供的 Google Maps Android API。
为此,我放入compile 'com.google.android.gms:play-services-maps:11.0.0'
了我的 gradle 文件。
当我用 android 8 启动我的模拟器时,它只提供版本 10.9.30 的 google play 服务并且地图没有显示。
我在 Mac 上使用 android studio 2.3.3 运行模拟器。
如何将我的 Google Play 服务更新到版本 11 以使用 Google Maps Android API?
先感谢您!
android - 为 api 26 (Android) 设置 Gradle
由于我已将 Nexus 5x 升级到 Android O DP3,我无法测试我的应用程序。我收到错误,因为没有配置我的 Gradle 文件以使用新的 API 级别 (26)。
所以我改变了这个和依赖关系,但我的所有支持库都出现错误,比如
点击
弹出一个进度对话框,用于下载正确的依赖项,但不会删除错误。清理项目、安装存储库然后重建项目也不起作用。
appcompat-v7
在 appcompat-v7:26.0.0-beta2 上,我得到(甚至在 Gradle 同步之前)很快就出现错误:
有人可以帮我为 Android API 26 正确配置 gradle 文件吗?任何帮助,将不胜感激。
PS:我目前正在使用 Gradle 3.0.0-alpha3 但在 Gradle 2.3.2 上遇到相同的错误
我的 Gradle 文件: