У меня была очень похожая проблема с той разницей, что я пытался использовать класс, расширенный android.widget.ImageView
. Если вы используете ProGuard, вам нужно указать, чтобы разрешить методы, задействованные в этом класс.
-keep public class * extends android.widget.ImageView{
public (android.content.Context);
public (android.content.Context, android.util.AttributeSet);
public (android.content.Context, android.util.AttributeSet, int);
public void set*(...);
}
http://proguard.sourceforge.net/manual/examples.html
Это говорит: «Разрешить все необходимые конструкторы, которые могут быть вызванный из xml и позволяющий использовать любые настраиваемые средства настройки (добавьте больше по мере необходимости) "
Вы дали это:
window.addEventListener ("load", clickConfirmButton, false);
Наверняка он бросит ReferenceError
. clickConfirmButton
совсем не определено. И код ниже ничего не делает, так как у него нет имени или вызова.
function () {
var button = document.querySelector("button[text^='Click me to submit']");
if (button) {
button.click ();
}
else {
//Do nothing
}
}
Итак, добавьте имя к функции выше:
function clickConfirmButton() {
var button = document.querySelector("button[text^='Click me to submit']");
if (button) {
button.click ();
}
else {
//Do nothing
}
}
Кроме того, вы не можете выбирать в CSS на основе их текстового содержимого. Вы должны изменить селектор на что-то общее: .btn-block
. Исходя из всего вышеперечисленного, я бы изменил его на:
function clickConfirmButton() {
// querySelector selects only one.
var button = document.querySelector("button.btn-block");
if (button) {
button.click ();
}
else {
//Do nothing
}
}
Или, если вы действительно хотите утверждать, основываясь на его содержании, я сделаю:
function clickConfirmButton() {
var button = document.querySelector("button.btn-block");
if (button && button.innerHTML.indexOf("Click me to submit") > -1) {
button.click ();
}
else {
//Do nothing
}
}