Передача Связки с Предметом Parcelable от Monkeyrunner - PullRequest
3 голосов
/ 15 сентября 2011

Я пытаюсь передать объект Parcelable в свои дополнения при запуске действия в Monkeyrunner. Область в сценарии выглядит следующим образом

user = FbUser() 
extraDic = {} 
extraDic['userName'] = 'Test' 
extraDic['userId'] = 'me' 
extraDic['userInfo'] = user 
d.startActivity(extras=extraDic, component=runComponent + postActivity) 

FbUser - это объект в моем Java-проекте, который реализует Parcelable. Корзина проекта была правильно добавлена ​​в sys.path в скрипте Jython Monkeyrunner. Когда я отлаживаю скрипт, он правильно создает объект FbUser, однако, когда я распечатываю дополнения в LogCat, лишние 'userInfo' отсутствуют ... Это происходит потому, что класс JythonUtils будет переводить только PyString, PyFloat и PyInteger в String, Double и Integer, хотя в документации для MonkeyDevice говорится, что вы можете передать любой структурированный тип данных в словаре extras. Кто-нибудь нашел способ сделать это?

1 Ответ

1 голос
/ 16 июля 2012

Я только недавно столкнулся с этой проблемой и прочитал источник, чтобы выяснить, что, к сожалению, это невозможно.

Экземпляр MonkeyDevice делегирует свою работу команде am по adb - .Как вы, возможно, уже знаете, дополнительные функции, которые я могу принять из командной строки, весьма ограничены .Фактически он может нести String, Boolean или Int.

...