Какое значение имеет преобразование проекта Android в проект AspectJ (для MonkeyTalk)

Разработали небольшое приложение на Android с помощью EclipseIDEи я хотел проверить это приложение на функциональность, после долгого RnD я нашел MonkeyTalk хороший инструмент для проверки этого, чтобы проверить мое приложение с помощью MonkeyTalk мне нужно преобразовать свой проект на затмение в AspectJ проект, тогда я могу использовать MonkeyTalkIDE записывать действия над приложением и воспроизводить их с помощью файла MonkeyTalk (*.mt),

Мой вопрос в том, какое значение имеет преобразование моего Android project в AspectJ project?

Я искал на AspectJ-Wikipeda и это.

Тем не менее у меня есть путаница, почему мы должны преобразовать их?

1 ответ

Решение

Библиотека разговоров Monkey использует комбинацию аспектно-ориентированного программирования (AOP) и aspectJ для получения текущей задачи, поэтому они добавляют
<uses-permission android:name="android.permission.GET_TASKS" />
разрешение. Теперь, используя это разрешение, они могут получить доступ к текущей активности приложения и его представлению. Таким образом, они анализируют текущее представление каждый раз, когда оно изменяется, и добавляют новый прослушиватель для этих представлений.

В Android код MonkeyTalk вызывается аспектами AspectJ - битами кода, которые "вплетаются" в приложение и вызываются при вызове методов cerain. В iOS MonkeyTalk инициализируется статически, принудительно используя флаг компоновщика "-all_load".

Вот почему нужно иметь доступ к источнику приложения. Но как только приложение скомпилировано, ему больше не нужен исходный код, и он может передать APK в QA.

Другие вопросы по тегам