Мне нужно определить, использует ли медиаплеер среду носителей opencore, поэтому я могу отключить поиск моих потоков. Рамка opencore, похоже, терпит неудачу в поисках, о которой я с трудом верю, что они допущены к производству, но это, тем не менее, имеет место.Определить рамки opencore или stagefright для медиапланера?
Мне жаль, что это не было так просто, как определить их версию SDK, но телефоны-дроиды, у которых есть api 8, похоже, все еще используют opencore, поэтому, похоже, не очень хороший вариант. Есть идеи?
EDIT:
После ответа от Иисуса, я пришел с этим кодом. Кажется, это хорошо работает в моих тестах. Если кто-то не думают, что это надежный метод для поиска потоков, дайте мне знать,
if (Build.VERSION.SDK_INT < 8) //2.1 or earlier, opencore only, no stream seeking
mStreamSeekable = false;
else { // 2.2, check to see if stagefright enabled
mStreamSeekable = false;
try {
FileInputStream buildIs = new FileInputStream(new File("/system/build.prop"));
if (CloudUtils.inputStreamToString(buildIs).contains("media.stagefright.enable-player=true"))
mStreamSeekable = true;
} catch (IOException e) { //problem finding build file
e.printStackTrace();
}
}
}
Привет, Как обладать классом CloudUtils? –
@AlexTran Это должно помочь http://stackoverflow.com/questions/309424/read-convert-an-inputstream-to-a-string –
Действительно извините, я не понимаю, что вы можете сказать о том, что я найду по ссылке , –