- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
最近,我们获得了一台搭载 Android 5.1.1 的新 Galaxy S6,但我们在使用它附带的新 Samsung SPCM 内存管理器时遇到了一些问题。它正在主动关闭我们应用程序的后台服务,即使设置为 START_STICKY,它也不会重新启动。
此外,该服务占用的 RAM 不超过 5MB,但我们仍然以某种方式最终获得了 SPCM 算法的最低分数并被选择终止。
这是我们的服务:
Public class IncomingService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
return START_STICKY;
}
@Override
public void onCreate() {
if (mPhoneListener == null) {
mPhoneListener = new CallStateListener();
TelephonyManager tm = (TelephonyManager) getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
tm.listen(mPhoneListener, PhoneStateListener.LISTEN_CALL_STATE);
}
/**
* Listener for call states
* Listens for different call states
*/
private class CallStateListener extends PhoneStateListener {
@Override
public void onCallStateChanged(int state, String incomingNumber) {
// Doing something with incomingNumber
}
}
在 list 中:
<service
android:name="com.services.IncomingService"
android:enabled="true"
android:priority="999" >
</service>
SPCM 杀死我们服务的日志:
Force stopping com.special.app appid=10499 user=0: SPCM kill lowestscore package!
03-18 22:48:11.280 3562-3562/? I/ActivityManager: Killing 2279:com.special.app/u0a499 (adj 8): stop com.special.app cause SPCM kill lowestscore package!
03-18 22:48:11.280 3562-3562/? W/ActivityManager: Scheduling restart of crashed service com.special.app/com.services.IncomingService in 1000ms
03-18 22:48:11.280 3562-3562/? I/ActivityManager: Force stopping service ServiceRecord{27d2c408 u0 com.special.app/com.services.IncomingService}
即使 ActivityManager 日志表明它正在为我们的服务重新安排重启,但它从未真正重启过。
我们已经看到关于其他应用程序(Facebook、TrueCaller 等)的相同 SPCM 日志,但他们的服务以某种方式设法重启。
综上所述,我们的问题是:
最佳答案
确保ActivityManager is not targeting your service too .
据我所知,除了持续通知之外,没有其他方法可以确保生存,三星的开发人员文档也是如此。至于 Facebook 和 TrueCaller,我没有答案。他们可能利用其他相关流程来恢复服务。
至于受影响的设备,我最早看到的是装有 5.0.2 的 Galaxy Tab S SM-T805。许多 5.1.1 三星设备也有 SPCM。我们最初也在 S6 上重现了这个问题,我可以确认它在 6.0.1 上仍然存在。
至于文档,this Samsung forums topic尽可能远。
对于测试和重现步骤,我建议:
adb shell getprop | grep spcm
.adb shell logcat -v 线程时间 | grep spcm
以确认进程已被终止。关于android - 处理三星 SPCM killer ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36094927/
我确实有自己的媒体播放应用程序 - 它使用 MediaSessionCompat(结合 ExoPlayer 和它的 MediaSessionConnector 插件)。 我在三星手机上遇到了 AOD(
我正在尝试使用 UPnP 将 key 代码发送到三星智能电视。我找到了可用 key 代码列表 here .但是我如何用整数表示相同,因为三星希望在 UPnP 服务中将其作为整数值接收。 谢谢 最佳答案
我花了很长时间用优化的 Ken Shirriff 解码 IR 代码阿杜诺图书馆。我稍微修改了代码,以便能够转储三星空调 (MH026FB) 56 位信号。 我的工作成果位于 Google Docs 文
我使用 jquery mobile 创建了一个移动应用程序,一切正常,但在三星手机中,左滑动和右滑动无法正常工作。 滑动 2-3 次后即可工作。 可以用来处理 var startCoords;
看起来 Tizen 支持 HTML5 和原生开发。但是,是否可以本地开发 Gear2 应用程序?如果是,在哪里可以找到这方面的任何样本? 最佳答案 是的,本地制作应用程序,访问 http://deve
我在 Samsung S8+ (android 9.0) 中遇到更改语言问题。我已将一个版本 .aab(“Android App Bundle 格式”)文件扩展名上传到“我的应用程序”的 Google
我想要在 Samsung Touchwiz UX、文件管理器、音乐播放器和其他一些应用程序中使用的小部件,两个 ListView 位于左侧和右侧平板电脑的侧面,中间有一个分隔符,可以在触摸时改变左右两
1 添加了 1 个 jar API 文件。这是示例代码的其余部分 我是从http://innovator.samsungmobile.com/cms/cnts/knowledge.detail.vie
在我的应用程序中,我设计了分辨率为 600x1024 的布局,并将它们放置在 layout-large 文件夹中。 当我在 Samsung Galaxy Tab 上运行该应用程序时,它会从 layou
我的应用程序具有以下代码来调用 native 相机的捕获; startActivityForResult 它已经在 nexus 5、HTC 1、nexus 7、Samsung S4 和 Samsung
任何人都面临三星设备上的 500 个警报限制异常。我搜索了几个小时,但只能找到 2 篇关于(一篇在堆栈溢出中)的帖子。但它似乎并没有解决问题。 我正在使用从 flag_update_current 生
有谁知道如何构建与 Samsung Knox 兼容的测试应用程序?为安装了 Knox 的三星设备构建应用程序有何不同? 最佳答案 从 KNOX 2.0 开始,不需要应用包装。 这是来自三星 KNOX
我们开发了一个使用 ssl 和 https://的网页,它在所有(*到目前为止我们测试过的那些)上都可以正常加载... 然而,当尝试在 Samsung Galaxy S4 上加载时 - 它只显示“此网
我有媒体查询,对于所有设备,您都可以看到它 here , 在 CSS 中 -这里没有所有元素...... /* ##Device = Desktops ##Screen = 1281px to hig
因此,要构建开源版本的 Android,您需要一个工具链来构建内核。你到底怎么知道要下载哪个版本的工具链?我知道这取决于内核版本。但是你如何解决这个问题呢?在 Android 网站上,在构建内核部分,
有没有人成功地将 Samsung Galaxy 与运行在 Win XP Pro SP3 上的 ADB 连接起来?非常感谢链接到与此相关的现有线程或教程!谢谢! 最佳答案 安装 CD 附带的 Samsu
我正在使用这个网络编辑器示例: http://jsfiddle.net/MW7q6/ 这使您能够看到样式化的输入标签 text-align: right; 在 iPhone 和 Nexus 上,占位符
我正在尝试压缩视频。它在所有设备上都运行良好,但在 Samsung S5 中出现以下错误。 错误日志:android.media.MediaCodec$CodecException:错误 0xffff
A 前段时间写了一个使用相机的应用程序 ( Camera2 )。它适用于 Samsung S5 (Android 6)。但是对于 S8+ (Android 8) 相机不再对焦。它会从 CONTROL_
我正在尝试将这些媒体查询用于 S7,但它不起作用还有其他建议吗? @media screen and (device-width: 360px) and (device-height: 640
我是一名优秀的程序员,十分优秀!