我正在为EBS的支付网关开发示例Android应用程序。我已将他们的sdk导入到android项目中。
EBS sdk提供了一个Getter和Setter类,即#34; PaymentRequest"类 我们必须将所有值设置为" PaymentRequest"的setter方法。类。
但我想将安全散列密钥设置为一个方法,但该方法在PaymentRequest类中受到保护。而且该类有私有构造函数。那么如何将安全散列密钥设置为受保护的方法
protected String getSecureKeyHash() {
return this.secureKeyHash;
}
protected void setSecureKeyHash(String secureKeyHash) {
this.secureKeyHash = secureKeyHash;
}
如何从myActivity访问这些方法,
PaymentRequest.getInstance().setSecureKeyHash("sdf");
但是setSecureKeyHash不可访问
答案 0 :(得分:0)
PaymentRequest mPaymentRequest = PaymentRequest.getInstance();
Class c = mPaymentRequest.getClass();
try {
Method method = c.getDeclaredMethod("setSecureKeyHash",String.class);
method.invoke(mPaymentRequest,"ur value");
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}