getProperty и getSystemProperty в MonkeyRunner возвращают None

Я новичок в разработке и тестировании Android, в настоящее время я учусь создавать тестовые сценарии под Python, а затем запускать их с помощью monkeyrunner.

Как сказано в официальной документации MonkeyDevice, [getProperty()][1] и [getSystemProperty()][2] должны возвращать вам значение, которое зависит от имени переменной свойства, которое вы им передаете. Каждый раз я получал только значение «Нет». Любая идея или трюк?!

Простой код, который я использую:

from com.android.monkeyrunner import MonkeyDevice,MonkeyRunner

device = MonkeyRunner.waitForConnection()

print device.getSystemProperty('version.sdk')

С уважением,,,


person Angry-d    schedule 10.04.2013    source источник
comment
Хороший, простой лаконичный вопрос, который поможет прояснить несколько ущербную и не интуитивно очевидную документацию. В документации об объектах класса monkeyrunner есть и другие странности, которые могут вызвать некоторое разочарование — см. мой комментарий к ответу ниже.   -  person Jim    schedule 29.10.2013


Ответы (2)


Вам нужно указать группу свойств. Например:

print device.getSystemProperty('build.version.sdk')
person Gabriel Porumb    schedule 11.04.2013
comment
Хороший, полезный и краткий ответ. У меня было getProperty('group.property') вернуть запрошенное свойство. У меня никогда не было, чтобы getSystemProperty (свойство String) возвращало что-либо, кроме None. В некоторых документах Android говорится, что они являются синонимами, но это не так. В другой документации говорится, что getSystemProperty предоставляется для использования разработчиками платформ, что, как я полагаю, означает ОС Android, а не приложения. Кроме того, build.ID и build.CPU_ABI не работают, тогда как build.id и build.cpu_abi работают. Надеюсь, это поможет потенциально разочарованным разработчикам, читающим несколько неполную документацию. - person Jim; 30.10.2013
comment
Я указал группу свойств и также получил None. я не знаю что случилось - person krosshj; 22.09.2015

по какой-то причине и getProperty(), и getSystemProperty() у меня не работают, но вы можете запустить:

$ adb shell getprop

который возвращает полный список атрибутов/значений

person waaadim    schedule 17.08.2018