Why doesn't Logcat print a log when a tag starts with "IMS"?

Why doesn't Logcat print a log when a tag starts with "IMS"?

@Override public void onClick(View v) { switch (v.getId()) { case R.id.btnOne: System.out.println("Button One log by sout"); Log.e("IMSfsadfasdfasdf", "log by Log.e()"); break; case R.id.btnTwo: System.out.println("Button Two log by sout"); Log.e("MService", "log by Log.e()"); break; } } 

Log:

 04-07 15:05:48.838 4363-4363/com.licheedev.myapplication I/System.out: Button One log by sout 04-07 15:05:49.916 4363-4363/com.licheedev.myapplication I/System.out: Button Two log by sout 04-07 15:05:49.916 4363-4363/com.licheedev.myapplication E/MService: log by Log.e() 04-07 15:05:54.109 4363-4363/com.licheedev.myapplication I/System.out: Button Two log by sout 04-07 15:05:54.109 4363-4363/com.licheedev.myapplication E/MService: log by Log.e() 04-07 15:05:54.822 4363-4363/com.licheedev.myapplication I/System.out: Button One log by sout 04-07 15:05:55.638 4363-4363/com.licheedev.myapplication I/System.out: Button One log by sout 

Screenshot:

+5
source share
1 answer

I'm not quite sure, but I think this is due to this line of code in the Android registration engine. This is in the function __android_log_write(prio, tag, buf);

 /* XXX: This needs to go! */ if (!strcmp(tag, "HTC_RIL") || !strncmp(tag, "RIL", 3) || /* Any log tag with "RIL" as the prefix */ !strncmp(tag, "IMS", 3) || /* Any log tag with "IMS" as the prefix */ !strcmp(tag, "AT") || !strcmp(tag, "GSM") || !strcmp(tag, "STK") || !strcmp(tag, "CDMA") || !strcmp(tag, "PHONE") || !strcmp(tag, "SMS")) { log_id = LOG_ID_RADIO; // Inform third party apps/ril/radio.. to use Rlog or RLOG snprintf(tmp_tag, sizeof(tmp_tag), "use-Rlog/RLOG-%s", tag); tag = tmp_tag; } 

Read this blog for more details.

+10
source

Source: https://habr.com/ru/post/1246602/


All Articles