2

我一直在编写一个针对 Android 2.1 的应用程序,几乎可以在所有设备上运行。最近我尝试在 Android 4.0.3 上运行它,它开始闪烁(就像 gmail 应用程序一样)。奇怪的是,我将启动活动更改为空活动(没有控件或布局元素),但它仍然闪烁。将目标更改为 Google APIs 4.0.3 也无济于事。

我目前正在使用 Google API 2.1。很少有外部库 protobuf 和 RabbitMQ 和应用程序权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_CONTACTS"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>

不知道还有什么可能对空 Activity 产生任何影响。有没有人经历过类似的事情或有任何线索可能会发生什么?

编辑:我开始了一个新项目,并一步一步地复制问题。这是我的扩展应用程序的类,它正在用以下内容淹没日志:
memalloc(26689): ion: Mapped buffer base:0x52172000 size:1949696 offset:0 fd:55
memalloc(26689): ion: Unmapping buffer base:0x52172000 size:1949696

如果我注释掉 line:
newConfig.locale = locale;
它在方法中停止:
public void onConfigurationChanged(Configuration newConfig)

4

1 回答 1

2

可能是您的活动重复打开?打印您的活动转储: adb shell dumpsys activity 检查堆栈以查看打开的实例数量

于 2012-07-08T14:03:18.337 回答