使用Shell的Xamarin.Android语法错误

时间:2018-10-30 15:05:31

标签: android shell xamarin xamarin.android logcat

我试图通过Xamarin.Android应用程序中的shell运行logcat,以获取设备范围的日志和崩溃。但是,对于一个相对简单的shell命令,我收到了非常奇怪的语法错误,设备之间的错误消息也有所不同。

这是我的代码的片段:

var process = Runtime.GetRuntime().Exec("/system/bin/sh /system/bin/logcat");
var errorStream = new BufferedReader(new InputStreamReader(process.ErrorStream));
var inputStream = new BufferedReader(new InputStreamReader(process.InputStream));

string line;

while ((line = errorStream.ReadLine()) != null)
{
    System.Console.WriteLine(line);
}

while ((line = inputStream.ReadLine()) != null)
{
    System.Console.WriteLine(line);
}

这将以退出代码1退出。

在M3SM10(Android 4.3)上,我得到以下输出:

/system/bin/logcat[1]: syntax error: '�
4P14' unexpected

在Google Pixel(Android 9.0)上,我得到:

 /system/bin/logcat[4]: $,����X�����: not found
 /system/bin/logcat: no closing quote
 /system/bin/logcat[5]: can't open ����: No such file or directory
 /system/bin/logcat[5]: ��zR: not found
 /system/bin/logcat[5]: l���h���������������������������������������������������@x: not found
 /system/bin/logcat[6]: syntax error: unexpected ')'

任何帮助弄清为什么会发生这种情况的人将不胜感激。

0 个答案:

没有答案