我目前正在运行最新版本的Android Studio v3.2.1.可用的虚拟设备仅适用于Pixel 2(和XL版本).这些还不够,因为我主要需要测试新的Google Pixel 3 XL,因为它的缺口.
是否有可能将新的Pixel 3(和XL版)加载到Android Studio的模拟器中进行测试?
我发现 Crashlytics 发生了崩溃,但我无法重现或找到其原因。该崩溃仅发生在运行 Android 12 的 Google Pixel 设备上,并且崩溃始终发生在后台。
这是来自 Crashlytics 的崩溃日志:
Fatal Exception: android.app.RemoteServiceException$CannotDeliverBroadcastException: can't deliver broadcast
at android.app.ActivityThread.throwRemoteServiceException(ActivityThread.java:1939)
at android.app.ActivityThread.access$2700(ActivityThread.java:256)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2190)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7870)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
Run Code Online (Sandbox Code Playgroud)
我看过类似的问题(比如this和this),但 Crashlytics 显示这些用户都有足够的可用内存,并且我们的代码库中没有任何地方可以调用registerReceiver,sendBroadcast所以第二个问题中的解决方案没有任何帮助。
根据有限的日志,我很确定当用户收到推送通知时会发生崩溃,但我有一台运行 Android 12 的 Google Pixel 4a,在向自己发送通知时根本无法重现它。
我们有一个习惯FirebaseMessagingService来监听我们在清单中注册的通知,还有一些BroadcastReceiver监听地理围栏更新并WorkManager在检测到转换时利用来执行一些工作。最近唯一改变的是我们更新为使用Android 的应用程序启动库WorkManager来初始化自身,但我不确定这是否相关,因为崩溃日志没有给我任何信息,以及我们的实现是否存在问题它不会仅限于运行 Android 12 的 Pixel 设备。
有人以前见过这个吗?或者运行 Android 12 的 Pixel 设备上是否存在专门的错误?我花了几个小时深入研究这个问题,但完全不知所措。
我已将Google Pixel升级到Android 9.0/Pie.当我尝试从Android工作室运行应用程序时,我没有在列表中看到Google Pixel,只有一个名为null的设备FA69R0306649.当我运行我的应用程序时,Android工作室尝试安装应用程序,但随后失败.
看起来Android Studio不再能识别手机了.几个小时前,在Oreo(8.x)下工作得非常好.
此外,如果我将谷歌播放的应用程序部署为alpha,然后下载它在9.0/Pie下完美运行.
在Android Studio(3.1.4)下使用android 9.0手机运行/调试的任何建议?

android android-emulator android-studio google-pixel android-9.0-pie
我正在研究一个应用程序,并在8.1设备(Pixel2,Nexus5x)上遇到了一个奇怪的行为,所以我写了一个小应用程序来验证这种行为.
MainActivity被锁定portrait,而模式LandscapeActivity被锁定landscape.MainActivity启动LandscapeActivityfor Result.屏幕切换portrait到landscape预期的.当LandscapeActivity完成它的传播结果MainActivity,而切换回portrait(如预期).
但有时候我会在这里遇到一些错误.之后onActivityResult在MainActivity它切换portrait到landscape切换回portrait立即.虽然我可以处理这个州,但它仍然看起来很讨厌.
为了可追溯性,我将发布所有内容以重建它.
我该怎么做才能防止它?另请注意,每次都不会发生这种情况,并且只能在8.1设备上进行测试.它似乎在8.1以下的Android设备上
编辑:
添加android:configChanges="orientation|screenSize"到我的清单@Floern建议他的答案没有成功.对平台错误的确认也是可接受的答案
表现
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:screenOrientation="portrait"
android:configChanges="orientation|screenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".LandscapeActivity"
android:screenOrientation="landscape"/>
</application>
Run Code Online (Sandbox Code Playgroud)
主要活动
public class MainActivity extends AppCompatActivity {
public static final String TAG = MainActivity.class.getSimpleName(); …Run Code Online (Sandbox Code Playgroud) android screen-orientation google-nexus google-pixel android-8.1-oreo
我读到这是因为引导加载程序被锁定,所以我无法刷新整个映像。但是如果我解锁引导加载程序,是否会擦除我的所有数据?我想看看侧载是否可以在使用核之前解决我的问题(冻结、引导循环)。
包验证后返回:
E: footer is wrong
Update package verification took 0.1s (result 1).
E: Signature verification failed
E: error 21
Install from ADB completed with status 2
Installation aborted
Run Code Online (Sandbox Code Playgroud) Android 上的蓝牙扫描似乎有很多“隐藏功能”。对于初学者来说,有一个“30 秒限制”(Android 7.0 ble scan no result)。然后你必须在后台模式下设置一个 ScanFilter 否则你不会得到任何结果(找不到这个的参考)。
最近我发现,当我在 Android 10 上使用以下扫描模式启用扫描并关闭屏幕(大约 30 秒后)时,我没有得到任何扫描结果(我在 Google Pixel 3 和 Google Pixel 4 上观察到了这种行为) ,它在较旧的 Android 上运行良好):
/**
* Perform Bluetooth LE scan in balanced power mode. Scan results are returned at a rate that
* provides a good trade-off between scan frequency and power consumption.
*/
public static final int SCAN_MODE_BALANCED = 1;
Run Code Online (Sandbox Code Playgroud)
还有另一种扫描模式(我还没有尝试过):
/**
* Perform Bluetooth LE scan in low power mode. This is the …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Android Studio 3.6.2 中创建一个 Pixel 4 虚拟设备。但是,Pixel 4 似乎不是一种选择。有什么方法可以下载此设备的硬件配置文件。
编辑:从 Android Studio 4.1(2020 年 8 月发布)开始,您现在可以使用 Pixel 4 皮肤创建虚拟设备。
android android-virtual-device android-studio google-pixel android-10.0
我正在为我的 Android 应用程序使用主题Theme.MaterialComponents.DayNight.NoActionBar( docs )。
我也在getActionBar().hide()MainActivity 中调用。
在我的几乎所有设备上,操作栏都没有显示。然而,在一台设备(运行 Android 12 的 Pixel 6)上,我仍然看到操作栏。我确信我已经安装了最新版本的应用程序。
你知道为什么操作栏仍然挂在这一台设备上吗?
Google Pixel 设备(操作系统 9.0-pie)上的 cashlytics 中未记录崩溃,Playstore 将 ANR&Crashes 报告为 java.lang.IllegalStateException:凭证加密存储中的 SharedPreferences 在用户解锁之前不可用
它是在初始化 Fabric.with(this, new Crashlytics()) 时发生的,还观察到设备重新启动时会引发 IllegalStateException,并且应用程序会注册 LOCKED_BOOT_COMPLETED 和 BOOT_COMPLETED 广播意图
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.connect, PID: 2328
java.lang.RuntimeException: Unable to create application com..common.app.AppApplication: java.lang.IllegalStateException: SharedPreferences in credential encrypted storage are not available until after user is unlocked
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5925)
at android.app.ActivityThread.access$1100(ActivityThread.java:200)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1656)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at
Run Code Online (Sandbox Code Playgroud)
有没有人遇到过类似的问题。任何人都可以帮助解决这个问题吗?
我的应用程序正在运行,并且从 Google Play Console出现“由:android.database.sqlite.SQLiteCantOpenDatabaseException: ”引起的崩溃。
大多数情况下,它发生在 Android 9 操作系统上,并且它即将推出的所有设备中有 50% 是 Google Pixel 设备。我尝试了其他具有 android 9 但没有运气的设备。我没有 Google Pixel 设备。无论如何,任何人都建议我修复或复制它。
我遇到一个问题,我可以连接到蓝牙设备一次,但断开连接后,在扫描蓝牙设备时我不再看到该设备。如果我完全关闭应用程序,设备仍然无法被发现,但如果我关闭手机,设备将再次被发现。
我还注意到这个问题发生在 Pixel、华为和 xiomi 设备上,但似乎适用于运行 Android 12 的三星。
我的假设是,Android 12 中有一些奇怪的功能,可以以某种方式保持连接与应用程序分开。在我的应用程序中,我调用此代码来断开连接:
gatt.close()
Run Code Online (Sandbox Code Playgroud)
还有其他方法可以确保设备完全断开连接吗?
编辑: 打电话
bluetoothManager.getConnectedDevices(BluetoothProfile.GATT)
Run Code Online (Sandbox Code Playgroud)
断开连接并关闭后仍然返回我连接的设备。
EDIT2: 我可以使用以下代码重现此问题:
private var gatt: BluetoothGatt? = null
@SuppressLint("MissingPermission")
fun onDeviceClick(macAddress: String) {
logger.i(TAG, "onDeviceClick(macAddress=$macAddress)")
val bluetoothManager: BluetoothManager =
context.getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager
if (gatt != null) {
logger.i(TAG, "Disconnecting")
gatt?.close()
gatt = null
printConnectedDevices(bluetoothManager)
return
}
printConnectedDevices(bluetoothManager)
val btDevice = bluetoothManager.adapter.getRemoteDevice(macAddress)
logger.d(TAG, "Device to connect: $btDevice")
gatt = btDevice.connectGatt(context, false, object : BluetoothGattCallback() {
override fun onConnectionStateChange(gatt: BluetoothGatt?, status: Int, newState: Int) { …Run Code Online (Sandbox Code Playgroud) 简短的摘要:
当设备插入时,Chrome DevTools无法检测到我的设备(Google Pixel 7 Pro)。有趣的是,当我断开设备与电缆的连接时,设备会被识别。发生这种情况时,我可以在短时间内(5 秒)看到在我的设备上的浏览器中打开的页面,然后它们就会消失。当然,在这种情况下,页面不是交互式的,因此如果您在“检查”选项消失之前单击“检查”选项,则不会发生任何情况。
一些有用的信息:
adb devices命令时,我的设备被识别(并且它不处于离线模式)
有任何想法吗?
我正在编写一个cordova应用程序,需要隔离这些谷歌手机来调整样式
鉴于这种:
我正在努力区分任何 Google Pixel 手机。
@media only screen and (min-width: 411px) and (max-width: 731px) {
.myDiv{ background-color: blue; }
}
Run Code Online (Sandbox Code Playgroud)
这会在所有像素上触发 - 在模拟器和物理设备中
@media only screen and (min-width: 411px) and (-webkit-device-pixel-ratio: 3) {
.myDiv{ background-color: blue; }
}
Run Code Online (Sandbox Code Playgroud)
这对于任何像素手机都不会触发 - 如果 3 或 4 像素比率无关紧要
@media screen and (device-width: 411px) and (device-height: 731px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2.6){
.myDiv{ background-color: blue;
}
Run Code Online (Sandbox Code Playgroud)
这也不会在任何像素手机上触发
我什至都在努力寻找一个可用于隔离 Google Pixel 2 XL 的媒体查询 - 似乎没有发布任何内容 - 但这款手机已经有一段时间了?
有没有人有这方面的运气?
android ×13
google-pixel ×13
android-10.0 ×2
android-12 ×2
adb ×1
android-ble ×1
crashlytics ×1
google-nexus ×1
sideloading ×1