Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何以编程方式检测android中的pocket模式_Android - Fatal编程技术网

如何以编程方式检测android中的pocket模式

如何以编程方式检测android中的pocket模式,android,Android,我正在尝试检测android中的pocket模式。但是我没有找到任何有用的链接 我们是否可以通过编程方式检查手机是否处于口袋模式?您可以通过读取各种传感器的值来实现它。然而,结果将是近似的。我使用接近传感器、加速计和光传感器实现了口袋检测 从传感器(加速计、接近传感器和光传感器)获取当前参数: 然后根据这些数据,我决定设备是否在口袋中: public void detect(float prox, float light, float g[], int inc){ if((prox<

我正在尝试检测android中的pocket模式。但是我没有找到任何有用的链接


我们是否可以通过编程方式检查手机是否处于
口袋模式

您可以通过读取各种传感器的值来实现它。然而,结果将是近似的。我使用接近传感器、加速计和光传感器实现了口袋检测

从传感器(加速计、接近传感器和光传感器)获取当前参数:

然后根据这些数据,我决定设备是否在口袋中:

public void detect(float prox, float light, float g[], int inc){
    if((prox<1)&&(light<2)&&(g[1]<-0.6)&&( (inc>75)||(inc<100))){
        pocket=1;
        //IN POCKET
    }
    if((prox>=1)&&(light>=2)&&(g[1]>=-0.7)){
        if(pocket==1){
            playSound();
            pocket=0;
        }
        //OUT OF POCKET
    }
public void detect(浮点前置器、浮点灯、浮点g[],int inc){
如果((prox=-0.7)){
如果(口袋==1){
播放声音();
口袋=0;
}
//自掏腰包
}
}

请记住,检测并非完全准确。
代码:

博客帖子:

我认为这是不可能的。如果你是说,这里有很多问题,Android 7+也有类似口袋模式的情况。否则,您必须查看特定设备制造商的规格,以了解如何进行交互。@KenY-N不是打瞌睡模式,我只是想知道手机是否在口袋中。ActivityRecognitionApi可能适合您
public void detect(float prox, float light, float g[], int inc){
    if((prox<1)&&(light<2)&&(g[1]<-0.6)&&( (inc>75)||(inc<100))){
        pocket=1;
        //IN POCKET
    }
    if((prox>=1)&&(light>=2)&&(g[1]>=-0.7)){
        if(pocket==1){
            playSound();
            pocket=0;
        }
        //OUT OF POCKET
    }