StrictMode 策略违规:Android 中的 StrictModeDiskReadViolation、WriteViolation
StrictMode policy violation: StrictModeDiskReadViolation,WriteViolation in Android
我正在开展一个使用 Google 地图的 Android 项目。该应用程序在我的 Cell phone 中运行良好,具有 5.1.1 Android 版本,因为我将它用于项目的开发,但同一个应用程序在其他单元格中无法运行 phone (6.0.0 Android)。在其他单元格中 phone Google 地图未更新。 (不去当前位置)。为什么 Google 地图在其他单元格 phone 中没有更新?
提示这个;
12-13 08:25:55.796 11170-11170/com.example.mapspractice1 W/f: Suppressed StrictMode policy violation: StrictModeDiskReadViolation
12-13 08:25:55.796 11170-11170/com.example.mapspractice1 W/f: Suppressed StrictMode policy violation: StrictModeDiskWriteViolation
12-13 08:25:55.939 11170-11458/com.example.mapspractice1 W/DynamiteModule: Local module descriptor class for com.google.android.gms.googlecertificates not found.
12-13 08:25:55.949 11170-11458/com.example.mapspractice1 I/DynamiteModule: Considering local module com.google.android.gms.googlecertificates:0 and remote module com.google.android.gms.googlecertificates:2
12-13 08:25:55.949 11170-11458/com.example.mapspractice1 I/DynamiteModule: Selected remote version of com.google.android.gms.googlecertificates, version >= 2
12-13 08:25:59.044 11170-11209/com.example.mapspractice1 V/FA: Inactivity, disconnecting from the service
我认为您看到的日志警告与问题无关,它们只是警告,我相信您可以安全地忽略它们。
在 Android M
(6) 中无法获取当前位置可能与新的 Runtime Permissions
模型有关。
如果您已将 android:targetSdkVersion
设置为 23
或更高,则除了将其置于 AndroidManifest
.
之外,您还需要明确地向用户请求您需要的每个权限
要在 Android M
设备上进行检查,
open the phone's Settings app > apps > find and select your app >
permissions > enable "Location" permission.
它现在应该可以正确识别应用中的位置。
看到这个:https://developer.android.com/training/permissions/requesting.html
关于如何在运行时向用户请求权限。
我正在开展一个使用 Google 地图的 Android 项目。该应用程序在我的 Cell phone 中运行良好,具有 5.1.1 Android 版本,因为我将它用于项目的开发,但同一个应用程序在其他单元格中无法运行 phone (6.0.0 Android)。在其他单元格中 phone Google 地图未更新。 (不去当前位置)。为什么 Google 地图在其他单元格 phone 中没有更新?
提示这个;
12-13 08:25:55.796 11170-11170/com.example.mapspractice1 W/f: Suppressed StrictMode policy violation: StrictModeDiskReadViolation
12-13 08:25:55.796 11170-11170/com.example.mapspractice1 W/f: Suppressed StrictMode policy violation: StrictModeDiskWriteViolation
12-13 08:25:55.939 11170-11458/com.example.mapspractice1 W/DynamiteModule: Local module descriptor class for com.google.android.gms.googlecertificates not found.
12-13 08:25:55.949 11170-11458/com.example.mapspractice1 I/DynamiteModule: Considering local module com.google.android.gms.googlecertificates:0 and remote module com.google.android.gms.googlecertificates:2
12-13 08:25:55.949 11170-11458/com.example.mapspractice1 I/DynamiteModule: Selected remote version of com.google.android.gms.googlecertificates, version >= 2
12-13 08:25:59.044 11170-11209/com.example.mapspractice1 V/FA: Inactivity, disconnecting from the service
我认为您看到的日志警告与问题无关,它们只是警告,我相信您可以安全地忽略它们。
在 Android M
(6) 中无法获取当前位置可能与新的 Runtime Permissions
模型有关。
如果您已将 android:targetSdkVersion
设置为 23
或更高,则除了将其置于 AndroidManifest
.
要在 Android M
设备上进行检查,
open the phone's Settings app > apps > find and select your app > permissions > enable "Location" permission.
它现在应该可以正确识别应用中的位置。
看到这个:https://developer.android.com/training/permissions/requesting.html 关于如何在运行时向用户请求权限。