标签: background-foreground

应用程序到达前台后SpeakHere录音机崩溃

我根据Apple的SpeakHere音频应用示例编写了一个小型录音机/播放器,可以在我的iPad上使用.当用户要求显示录像机时,UIView将打开并显示录制/停止按钮和仪表.

当我从头开始加载应用程序时,我可以记录,停止记录,再次记录我想要的任何时间.停止录制后,我将应用程序放在后台,例如阅读我的邮件.再次将录音机置于前台时,无法录制任何声音.我在日志中收到错误消息,仪表不显示任何数据,也没有创建声音文件.我注意到与iPhone和iPad上的SpeakHere示例应用程序相同的行为.唯一的解决方案是退出并重新启动应用程序.

为了解决这个问题,我决定在用户​​完成录像机的使用后取消分配视图控制器.我为记录视图控制器禁用了ARC,并编写了dealloc方法.在这个控制器的viewDidDisappear中,我进行了[self dealloc]调用.

但程序崩溃,发送[RecorderViewController childViewControllersCount]:消息发送到解除分配的实例.我想这样的自我dealloc是不允许的......

我需要找到一个解决方案,或者......

  1. 找到一种在应用程序进入后台时正确管理音频会话的方法(因为录制停止,我不明白为什么会出现这样的问题).

  2. 或者在视图关闭时正确释放录像机视图控制器,以确保在视图必须出现的任何时候,它都会从控制器的XIB文件中再次加载.

[更新]在查看aurioTouch应用程序的代码(Apple dev网站的另一个音频示例)后,我在我的应用程序委托中获得了以下代码:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    AudioSessionSetActive(true);

}
Run Code Online (Sandbox Code Playgroud)

它可以在我的应用程序或SpeakHere应用程序中运行...花了很多时间找到一个解决方法,这是一行代码!

audio-recording background-foreground ios

5
推荐指数
0
解决办法
956
查看次数

BackgroundSubtractorMOG2的参数

我有问题理解的所有参数backgroundsubtractormog2.

我查看了代码(位于bfgf_gaussmix2.cpp),但没有看到与提到的文件的连接.例如,Tb = varThreshold,但论文中Tb的名称是什么?

我对脂肪标记的参数特别感兴趣.

让我们从easy参数[我的评论]开始:

  • int nmixtures

    允许的最大混合物组分数.每个像素动态确定实际数量.[为GMG设置0]

  • uchar nShadowDetection

    在输出前景蒙版中标记阴影像素的值.默认值为127.

  • 漂浮fTau

    影子阈值.如果像素是背景的较暗版本,则检测阴影.Tau是一个阈值,用于定义阴影的暗度.Tau = 0.5意味着如果一个像素的深度超过两倍,那么它就不是阴影.

现在对我不明白的人:

  • 浮动backgroundRatio

    定义组件是否足够重要以包含在背景模型中的阈值(对应于TB = 1-cf,来自论文?哪篇论文??).cf = 0.1 => TB = 0.9是默认值.对于alpha = 0.001,这意味着模式在被认为是前景之前应该存在大约105帧.

  • float varThresholdGen

    平方Mahalanobis距离的阈值,有助于确定样品何时接近现有组件(对应于Tg).如果它不接近任何组件,则生成新组件.3 sigma => Tg = 3*3 = 9是默认值.Tg值越小,产生的组分越多.较高的Tg值可能导致少量组分,但它们可能会变得太大.[我不明白这个]

  • 在构造函数中,使用变量varThreshold.它与varThresholdGen相同吗?

    平方马哈拉诺比斯距离的阈值决定它是否被背景模型很好地描述(见Cthr ??).此参数不会影响后台更新.典型值可以是4西格玛,即varThreshold = 4*4 = 16; (见Tb ??).

  • float fVarInit

    新生成的组件的初始方差.它影响适应的速度.参数值基于您对图像的典型标准偏差的估计.OpenCV使用15作为合理的值.

  • 浮动fVarMin

    用于进一步控制方差的参数.

  • 浮动fVarMax

    用于进一步控制方差的参数.

  • 浮动fCT

    复杂性降低参数.此参数定义接受证明组件存在所需的样本数.CT = 0.05是所有样品的默认值.通过设置CT = 0,您将获得与标准Stauffer&Grimson算法非常相似的算法.

有人在OpenCV网站上问过几乎同样的问题,但没有答案.

c++ parameters opencv background-foreground

5
推荐指数
1
解决办法
4013
查看次数

当我向后台作业发送 SIGCONT 信号时发生了什么?

我正在编写一个简单的 Linux shell,我想知道是否可以通过向其发送 SIGCONT 信号来将后台作业置于前台。

shell signals background background-foreground

5
推荐指数
1
解决办法
1357
查看次数

Forgeround 服务在几分钟后停止或锁定电话

我尝试创建每 20 秒发送一条消息的前台服务,但此服务在几分钟后停止或锁定电话。我在 android 8 (O) 中测试了这个服务。我的代码是:

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
  input = intent.getStringExtra("inputExtra");

  new Thread(new Runnable() {
    public void run() {
      while (progressStatus < 10000000) {
        progressStatus += 1;           
        handler.post(new Runnable() {
          @SuppressLint("MissingPermission")
          public void run() {
            Intent notificationIntent = new Intent(ExampleService.this, MainActivity.class);
            PendingIntent pendingIntent = PendingIntent.getActivity(ExampleService.this,
              0, notificationIntent, 0);
            String mmm = CHANNEL_ID;

            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
              notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
              id = "id_product";
              // The user-visible name of the channel. …
Run Code Online (Sandbox Code Playgroud)

android background-foreground foregroundnotification foreground-service

5
推荐指数
1
解决办法
2388
查看次数

HomeKit - 当我从后台返回到前台时,如何更新附件 isReachable 值?

情况:我正在开发一个管理 HomeKit 配件的应用程序。例如我这样做:

  1. 配件已通电,我通过应用程序看到它。同样在前台模式HMAccessoryDelegate方法中:

func accessoryDidUpdateReachability(HMAccessory)

工作正常,我可以处理我的配件状态。

  1. 我将应用程序切换到后台模式。

  2. 我关闭了附件(我的意思是完全关闭电源),所以它一定是无法访问的。

  3. 我将应用程序切换到前台模式,但附件仍然可用。方法func accessoryDidUpdateReachability(HMAccessory)- 未调用。值accessory.isReachable未更新。

当我进入前台时的代码示例:

func applicationDidBecomeActive(_ application: UIApplication) {  
    if let home = HomeStore.sharedStore.home {  
        for accessory in home.accessories {  
            print(accessory.isReachable) //not updated  
            for service in accessory.services {  
                for characteristic in service.characteristics {  
                    characteristic.readValue { (error) in //updated  
                        if error == nil {  
                            let notification = Notification(name: Notification.Name(rawValue: "UpdatedCharacteristic"))  
                            NotificationCenter.default.post(notification)  
                        }  
                    }  
                }  
            }  
        }  
    }  
}
Run Code Online (Sandbox Code Playgroud)

问题:当我从后台模式返回到前台时,如何更新配件的 isReachable 值?

background-foreground ios swift homekit

5
推荐指数
1
解决办法
385
查看次数

iOS - 如何判断本地通知是否导致我的应用程序进入前台?

我的应用代表中有代码

    application:didReceiveLocalNotification:
Run Code Online (Sandbox Code Playgroud)

每当我的应用程序在前台时,显示该本地通知的UIAlertView的方法.

如果我的应用程序在本地通知到达时在后台,则会向用户显示通知,并且可以通过选择启动应用程序.在这种情况下,我的应用程序来到我的App代表的前台

    applicationWillEnterForeground:
Run Code Online (Sandbox Code Playgroud)

叫做.然后再次调用didReceiveLocalNotification方法,导致UIAlertView再次出现.但实际上,当应用程序处于后台时,用户已经有了警报,所以理想情况下我不希望再次显示此警报.

我可以看到,如果一个应用程序是由于本地通知而启动的话

    application:didFinishLaunchingWithOptions:
Run Code Online (Sandbox Code Playgroud)

您可以检查密钥的启动选项的方法

    UIApplicationLaunchOptionsLocalNotificationKey
Run Code Online (Sandbox Code Playgroud)

要知道本地通知是否导致您的应用程序启动,但是当用户与本地通知进行交互而刚刚返回到前台时,似乎没有找到此方法的方法.

检查我的applicationWillEnterForeground方法是否最近被调用似乎是一个讨厌这个问题的方法,或者类似于这个问题中给出的答案" iOS如何判断应用程序是运行前景还是后台? "将允许我检查

    [UIApplication sharedApplication].applicationState
Run Code Online (Sandbox Code Playgroud)

从我的内心

    application:didReceiveLocalNotification:
Run Code Online (Sandbox Code Playgroud)

方法.希望它能够及早收到,在这种情况下我的applicationState仍然不会被设置为UIApplicationStateActive.

或者有更好的解决方案吗?

干杯

application-state background-foreground ios uilocalnotification

3
推荐指数
1
解决办法
5021
查看次数

关闭终端窗口/会话后将 bg 作业发送到 fg

TL;DR关闭终端窗口后如何将bg(后台)作业转移到(前台)?fg

完整 我正在使用终端启动 Spotify 并使用CTRL+Z和将其置于后台bg。在此窗口中,一切都按预期运行:fg再次将进程置于前台并向jobs我显示 Spotify 作为正在运行的进程。如果我关闭终端窗口,就会出现问题。

当我关闭终端窗口并打开一个新的终端窗口后,该jobs命令找不到在后台运行的 Spotify。因此我无法再访问停止或关闭的过程。

这种行为有什么好处CTRL+Z, fg, bg& jobs?我怎样才能恢复我的进程?

terminal jobs background-process background-foreground

3
推荐指数
1
解决办法
3825
查看次数

如何挂钩Android应用程序生命周期?

Android支持Activity通过生命周期挂钩,Application.ActivityLifecycleCallbacks但我找不到轻松挂钩的方法Application.为什么Application生命周期中没有类似的界面?

我想知道一个应用程序是否在后台/前台,我不想手动进行计数(可行使用Application.ActivityLifecycleCallbacks).

我正在开发一个Android库,其中一个用例需要知道包含lib的应用程序是否在后台/前台.

我看到包中有一个ApplicationLifecycleCallback接口android.support.test.runner.lifecycle(仅用于测试).为什么不在android.app包装内暴露类似的东西Application.ActivityLifecycleCallbacks呢?

如何完成我的用例?你会如何实现它?

任何提示/想法/解决方法都非常受欢迎.非常感谢!

android background-foreground android-lifecycle

3
推荐指数
1
解决办法
776
查看次数

应用程序未运行时是否会触发UILocalNotifications?

我似乎无法找到一个明确的线程来回答这些问题:

"当应用程序未运行时(即不在前台或后台),预定的UILocalNotification是否会触发"?

"当应用程序未运行时(即不在前台或后台)并且手机处于锁定/睡眠模式时,UILocalNotifications是否会触发?"

一些答案表明他们会像UILocalNotifications由iOS操作系统处理.有些人似乎暗示只有在应用程序在后台或前台运行时才会触发.如果手机被锁定,我无法找到有关UILocalNotifications是否有效的信息.

谢谢,詹姆斯

background-foreground ios uilocalnotification

2
推荐指数
1
解决办法
2357
查看次数

使用maxflow进行图像分割

我必须在C++中使用maxflow算法进行前景/背景分割.(http://wiki.icub.org/iCub/contrib/dox/html/poeticon_2src_2objSeg_2src_2maxflow-v3_802_2maxflow_8cpp_source.html).我根据他们的RBG从png文件中获取了一个像素数组,但接下来的步骤是什么.我怎么能用这个算法来解决我的问题呢?

image-processing computer-vision background-foreground image-segmentation max-flow

1
推荐指数
1
解决办法
2720
查看次数

为什么为单元格设置颜色不起作用(Aspose Cells)?

我有这段代码来尝试设置单元格的背景颜色(除其他外):

private static readonly Color CONTRACT_ITEM_COLOR = Color.FromArgb(255, 255, 204);
. . .
cell = pivotTableSheet.Cells[4, 0];
cell.PutValue(AnnualContractProductsLabel);
style = cell.GetStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.VerticalAlignment = TextAlignmentType.Center;
style.Font.IsBold = true;
pivotTableSheet.Cells.SetRowHeight(4, 25);
style.BackgroundColor = CONTRACT_ITEM_COLOR;
pivotTableSheet.Cells[4, 0].SetStyle(style);
Run Code Online (Sandbox Code Playgroud)

水平和垂直对齐的设置有效,粗体和高度也有效 - 除了颜色之外的所有内容:

在此输入图像描述

还需要什么?我什至尝试将 ForegroundColor 和背景颜色设置为:

style.ForegroundColor = Color.Red;
style.BackgroundColor = Color.Blue;
Run Code Online (Sandbox Code Playgroud)

...但两者都没有任何作用 - 单元格看起来仍然与上面的屏幕截图完全相同。

excel colors background-foreground aspose aspose-cells

0
推荐指数
1
解决办法
4555
查看次数