问题标签 [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.
android - 安卓奥利奥 - GCM
下面的代码是从google引用来支持GCM的,
查询 1. 根据谷歌文档,后台执行限制对 Android Oreo 的上述任何影响?或者它会按预期工作而无需更改任何代码?
此外,正如谷歌在下面建议的那样,
如果您在应用开发中以 Android 8.0(API 级别 26)或更高版本为目标,请使用 Firebase Cloud Messaging (FCM)。否则,使用 JobIntentService 类而不是 IntentService 来处理令牌刷新。
查询 2. 基于上述陈述,以下方法是否正确?
如果是,那么 enqueueWork 的调用者是谁?
注意:由于某些限制,无法迁移到 FCM。
android - Android模拟器顶部无法点击
我在用着:
在它的顶部,模拟器不可点击或拖动,我只是无法下拉通知栏或点击应用程序中的后退按钮。这不会发生在模拟器的底部......有人遇到同样的问题吗?我不知道这是否有用,但我使用的是双显示器(macbook + led 面板)。
编辑:我认为较小的设备存在问题。Pixel 2(不是 XL)也有同样的问题。适用于 Pixel 2 XL。
编辑 2:Pixel 2 在 API 级别 25(牛轧糖)上运行良好。
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,系统会立即授予该权限而不提示用户。
我尝试只请求读取权限(对话框- >允许),后来我请求写入权限(没有对话框->仍然没有授予)它没有工作。
显现:
我需要这个权限
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 上运行它时,它没有启动活动。
android - android.os.FileUriExposedException,文件通过 ClipData.Item.getUri() 暴露在应用程序之外
一些曾经工作的代码......不再工作。我不知道新的 Android 更新现在出了什么问题。
这是我将为某些 CSV 文件传入一组 Uris 的函数,然后它会启动一个选择器以将它们传递到用户选择的任何位置:
这是我在最后一行得到的错误activity.startActivity(...
:
根据我的搜索,我不知道这意味着什么或如何解决它。
编辑:我已经在这里看到了答案https://stackoverflow.com/a/38858040/9665241,事实证明我已经实施了该解决方案来处理过去的问题。换句话说,我有:
在我的清单中。而且我也有
在res/xml/provider_paths.xml
.
android - WebView 显示空白
我在 Oreo 下的 WebView 中显示本地生成的 HTML 内容时遇到问题。在奥利奥之前,有问题的代码在所有东西上都运行良好,但在奥利奥上我只得到一个空的白色窗口。
我的布局很简单:
使用它的类派生自 DialogFragment。设置内容的代码如下:
content
我要喂的是webView.loadDataWithBaseURL
一个简单的 HTML 字符串——我不想从 Internet 上访问任何东西。
我尝试过但没有成功的事情:
添加:
将 loadDataWithBaseURL 的 baseUrl 参数更改为"about:blank"
和null
。
用一个简单的替换我的 HTML 生成:
在所有情况下,我都会得到一个白屏。
正如我所说,这在包括牛轧糖在内的情况下一直很好,但现在在奥利奥上失败了。
建议?
android - Oreo (8.1.0):纵向问题
我希望所有活动都是纵向的。
所以我都试过了
但如果我在onCreate(), onPause() or onResume()
打开应用程序之前从一开始就以横向方式旋转设备,屏幕将翻转为横向并返回纵向。
但是,如果我删除setRequestedOrientation
方法并仅添加它android:screenOrientation="portrait"
,AndroidManifest.xml
那么它就可以工作(但让我们想象一下,如果我有 30 个活动,那么最好在 BaseActivity 中使用)
如何重现
BaseActivity 有方法
onCreate(), onResume(), onPause() setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
横向旋转设备。
- 打开应用,Activity A 正在从横向翻转到纵向。
- 从Activity A启动Activity B,Activity B从横向翻转到纵向。
注意 我已经检查了 Android 8.1 屏幕方向问题:翻转到横向纵向屏幕
但它不起作用(只有在 AndroidManifest 中定义了方向时才起作用)
如果有人知道如何解决,请分享解决方案
太感谢了。
android - 解析oreo中的apk时出错
在 oreo 设备中安装 Build APK 时出现错误。它可以与除奥利奥以外的其他设备一起正常工作。请帮我。
错误:
解析包时出现问题
这是我的 Gradle
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 可以吗?这个组合有问题吗?