小编Jup*_*ter的帖子

没有\n的python子进程输出

这是一个运行子进程的简单脚本,它ifconfig从终端的命令输出中检索IP .我注意到subprocess.check_output()总是返回一个值\n.

我渴望得到一个返回值\n.如何才能做到这一点?

$ python
>>> import subprocess
>>> subprocess.check_output("ifconfig en0 | awk '{ print $2}' | grep -E -o '([0-9]{1,3}[\.]){3}[0-9]{1,3}'", shell=True)
'129.194.246.245\n'
Run Code Online (Sandbox Code Playgroud)

python

12
推荐指数
2
解决办法
2万
查看次数

广播接收器使用什么Firebase云消息传递意图过滤器?

我正在尝试让Android系统收到Firebase Cloud消息通知时运行Android BroadcastReceiver。

public class MyBroadcastReceiver extends BroadcastReceiver {

private static final String TAG = "MyBroadcastReceiver";

@Override
public void onReceive(final Context context, Intent intent) {


    Toast.makeText(context, "EVENT OCCURED", Toast.LENGTH_LONG).show();

   }
}
Run Code Online (Sandbox Code Playgroud)

在AndroidManifest中需要这样指定接收者标签:

    <receiver
        android:name=".MyBroadcastReceiver"  android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </receiver>
Run Code Online (Sandbox Code Playgroud)

如您在上面的清单中所见,我添加了:

<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
Run Code Online (Sandbox Code Playgroud)

以确保当我将电缆插入Android设备时会触发BroadcastReceiver。工作正常。

因此,问题在于:

<action android:name="com.google.firebase.MESSAGING_EVENT" />
Run Code Online (Sandbox Code Playgroud)

广播接收器无法识别此意图过滤器动作吗?BroadcastReceiver使用的Firebase消息是否还有另一个意图过滤器动作?

android broadcastreceiver firebase firebase-cloud-messaging

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