これはアンドロイドの質問ではなく、Javaの質問のほうが多いです。私たちは以下のコードを見れば、私は私のメインクラスからgetEnrollmentUsernameにアクセスする必要があります。インタフェース内の抽象クラスにアクセスする方法
public interface IAirWatchSDKService extends android.os.IInterface {
public String getEnrollmentUsername(String publicKey);
public abstract static class Stub extends Binder implements IAirWatchSDKService {
private static class Proxy implements IAirWatchSDKService {
@Override
public IBinder asBinder() {
return null;
}
public String getEnrollmentUsername(String publicKey){
return "it worked";
}
}
}
}
が、問題は、それが抽象クラスの内にラップされていることです。どのように私のメインクラスからそれを得ることができますか?このコードはライブラリの一部であるため変更できません。メインクラスのコードを書く必要があります。
メインクラスが表示される場所に応じて、クラスを表示する必要があります。公開 - 非公開ではありません。 –
内部クラスが 'private'なので、できません。 'Stub'クラスに' Proxy'の 'static'インスタンスを作成し、それを取得するためにゲッターを使うことができます。それはあなたの必要に応じて決まります。 – Zircon
このコードはライブラリの一部であるため変更できません –