问题标签 [android-8.1-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.

0 投票
1 回答
1009 浏览

android - 安卓奥利奥 - GCM

下面的代码是从google引用来支持GCM的,

查询 1. 根据谷歌文档,后台执行限制对 Android Oreo 的上述任何影响?或者它会按预期工作而无需更改任何代码?

此外,正如谷歌在下面建议的那样,

如果您在应用开发中以 Android 8.0(API 级别 26)或更高版本为目标,请使用 Firebase Cloud Messaging (FCM)。否则,使用 JobIntentService 类而不是 IntentService 来处理令牌刷新。

查询 2. 基于上述陈述,以下方法是否正确?

如果是,那么 enqueueWork 的调用者是谁?

注意:由于某些限制,无法迁移到 FCM。

0 投票
1 回答
941 浏览

android - Android模拟器顶部无法点击

我在用着:

在它的顶部,模拟器不可点击或拖动,我只是无法下拉通知栏或点击应用程序中的后退按钮。这不会发生在模拟器的底部......有人遇到同样的问题吗?我不知道这是否有用,但我使用的是双显示器(macbook + led 面板)。

编辑:我认为较小的设备存在问题。Pixel 2(不是 XL)也有同样的问题。适用于 Pixel 2 XL。

编辑 2:Pixel 2 在 API 级别 25(牛轧糖)上运行良好。

0 投票
2 回答
3721 浏览

android - 以android O(26)8.0为目标后如何拥有Read + Write外部存储

在下面针对 android O 代码之前工作得很好。设置 targetApi=27 (8.1) 后,它停止工作。

我看到了一个我们都知道的权限对话框,我很高兴允许 App 访问设备上的照片媒体和文件。

并在onRequestPermissionResult()其中返回

我按照这个答案https://stackoverflow.com/a/48353465/4858147没有用。

当我在寻找解决方案时,发现了这个https://developer.android.com/about/versions/oreo/android-8.0-changes.html#rmp读完后我并不聪明,但我 100% 确定这是造成它。

如果应用面向 Android 8.0(API 级别 26),系统此时仅授予 READ_EXTERNAL_STORAGE;但是,如果应用程序稍后请求 WRITE_EXTERNAL_STORAGE,系统会立即授予该权限而不提示用户。

我尝试只请求读取权限(对话框- >允许),后来我请求写入权限(没有对话框->仍然没有授予)它没有工作。

显现:

我需要这个权限

0 投票
1 回答
394 浏览

android - 奥利奥上的单选按钮部分未选中

我得到了单选按钮的奇怪行为Oreo 8.0.1,单选按钮被部分选中,这已经在Stackoverflow 此处此处进行了讨论。 在上面的图像被部分选中,这仅在我们检查单选按钮时发生这是我认为根据这个答案的动画错误并通过调用修复,但现在我只在第一次更改状态时得到,请看 这里第一个单选按钮是已选中,但仍部分选中第二个单选按钮。在此处输入图像描述
First Radio ButtonprogrammaticallyjumpDrawablesToCurrentState()partially unCheckedprogrammatically在此处输入图像描述

0 投票
3 回答
558 浏览

android - 在 Android Oreo 中启动应用程序时出现错误

我面临以下错误:

执行时出错:am start -n "com.package/com.package.SplashActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER 开始:Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.package/.SplashActivity } 错误类型 3 错误:活动类 {com.package/com.package.SplashActivity} 不存在。启动活动时出错

那么我该怎么做才能解决这个问题

安卓清单:

我还添加了清单文件,您可以看到我需要更改的内容,并且我正在使用推送通知。

我在这里先向您的帮助表示感谢。

已编辑: com.company.xyz 包名,在其他 build.gradle 和清单中相同

我检查了这两个文件是否具有相同的包名称,并且该应用程序正在所有设备中运行,但是当我尝试在 OREO 上运行它时,它没有启动活动。

0 投票
0 回答
931 浏览

android - android.os.FileUriExposedException,文件通过 ClipData.Item.getUri() 暴露在应用程序之外

一些曾经工作的代码......不再工作。我不知道新的 Android 更新现在出了什么问题。

这是我将为某些 CSV 文件传入一组 Uris 的函数,然后它会启动一个选择器以将它们传递到用户选择的任何位置:

这是我在最后一行得到的错误activity.startActivity(...

根据我的搜索,我不知道这意味着什么或如何解决它。

编辑:我已经在这里看到了答案https://stackoverflow.com/a/38858040/9665241,事实证明我已经实施了该解决方案来处理过去的问题。换句话说,我有:

在我的清单中。而且我也有

res/xml/provider_paths.xml.

0 投票
0 回答
351 浏览

android - WebView 显示空白

我在 Oreo 下的 WebView 中显示本地生成的 HTML 内容时遇到问题。在奥利奥之前,有问题的代码在所有东西上都运行良好,但在奥利奥上我只得到一个空的白色窗口。

我的布局很简单:

使用它的类派生自 DialogFragment。设置内容的代码如下:

content我要喂的是webView.loadDataWithBaseURL一个简单的 HTML 字符串——我不想从 Internet 上访问任何东西。

我尝试过但没有成功的事情:

添加:

将 loadDataWithBaseURL 的 baseUrl 参数更改为"about:blank"null

用一个简单的替换我的 HTML 生成:

在所有情况下,我都会得到一个白屏。

正如我所说,这在包括牛轧糖在内的情况下一直很好,但现在在奥利奥上失败了。

建议?

0 投票
0 回答
2088 浏览

android - Oreo (8.1.0):纵向问题

我希望所有活动都是纵向的。

所以我都试过了

但如果我在onCreate(), onPause() or onResume()打开应用程序之前从一开始就以横向方式旋转设备,屏幕将翻转为横向并返回纵向。

但是,如果我删除setRequestedOrientation方法并仅添加它android:screenOrientation="portrait"AndroidManifest.xml那么它就可以工作(但让我们想象一下,如果我有 30 个活动,那么最好在 BaseActivity 中使用)

如何重现

  1. BaseActivity 有方法onCreate(), onResume(), onPause() setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

  2. 横向旋转设备。

  3. 打开应用,Activity A 正在从横向翻转到纵向。
  4. 从Activity A启动Activity B,Activity B从横向翻转到纵向。

注意 我已经检查了 Android 8.1 屏幕方向问题:翻转到横向纵向屏幕

活动在 android 8.1 中自行旋转并恢复正常

但它不起作用(只有在 AndroidManifest 中定义了方向时才起作用)

如果有人知道如何解决,请分享解决方案

太感谢了。

0 投票
0 回答
516 浏览

android - 解析oreo中的apk时出错

在 oreo 设备中安装 Build APK 时出现错误。它可以与除奥利奥以外的其他设备一起正常工作。请帮我。

错误

解析包时出现问题

这是我的 Gradle

0 投票
1 回答
2104 浏览

android - 安卓系统 | API 级别 26 或 27

我正在使用 Android O,以下是我的配置:

Q1根据 Android 指南:

在 2018 年下半年,Play 将要求新应用和应用更新以最新的 Android API 级别为目标。

最近的 Android API 版本是 27 (8.1),但在我的情况下,compileSdkVersion 26、buildToolsVersion 26.0.0、targetSdkVersion 26。所以按照指南,我应该保留 26 还是 27?

Q2如果我继续使用 compileSdkVersion 26, buildToolsVersion 26.0.0, targetSdkVersion 26 怎么办?这是违反指导方针还是可以?

Q3如果我保持支持库版本为 27.1.1 并 compileSdkVersion 26、buildToolsVersion 26.0.0、targetSdkVersion 26 可以吗?这个组合有问题吗?