Conversation

cbianchi-7

Removing the @experimentalapi annotation for APIs used by the App Interaction Library to enable gRPC to be used as dependency for IPCs for Jetpack.

@linux-foundation-easycla

CLA Signed

The committers listed above are authorized under a signed CLA.

@ejona86ejona86 added the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 3, 2022
@grpc-kokorogrpc-kokoro removed the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 3, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These comments are from our API review meeting. Overall, mostly nits. I don't expect most of these to be addressed directly in this PR. The two things that are impactful that we noticed involve IBinderReceiver and non-final AndroidComponentAddress. We can accept not touching IBinderReceiver. But final-izing AndroidComponentAddress seems reasonably important.

@ejona86

If the user adds interceptors, they will run before the security interceptor, because interceptors wrap services. The last one is closest to the network.

BinderTransportSecurity.installAuthInterceptor(this);

@ejona86ejona86 added the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 16, 2022
@grpc-kokorogrpc-kokoro removed the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 16, 2022
@cbianchi-7

Have addressed and resolved all existing comments / changes. Are there any additional thoughts from folks?
@ejona86 , @jdcormie , @markb74

@ejona86ejona86 added the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 29, 2022
@grpc-kokorogrpc-kokoro removed the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 29, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. I noticed one thing. I think I'll fix it up myself and then approve.

@cbianchi-7

That sounds good to me. Thanks for running the additional checks as well. All looks good.

@ejona86ejona86 added the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 29, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll let markb74 merge.

@grpc-kokorogrpc-kokoro removed the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 29, 2022
@markb74markb74 added the kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be runlabel Nov 30, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if readers in this forum will understand the connection to "app interaction sdk" in the PR description. How about "Promote binder out of experimental status" or similar?

@cbianchi-7cbianchi-7 changed the title Remove experimental for app interaction sdk Promoting binder out of experimental status Nov 30, 2022
@cbianchi-7

@jdcormie , I think that's a good suggestion to give better change context. I updated the description accordingly using the active tense.

@ejona86ejona86 merged commit d6aa0ea into grpc:master Nov 30, 2022
@ejona86ejona86 changed the title Promoting binder out of experimental status binder: Promote out of experimental status Nov 30, 2022
@@ -103,6 +101,10 @@ public static AndroidComponentAddress forComponent(ComponentName component) {
new Intent(ApiConstants.ACTION_BIND).setComponent(component));
}

/**
* Returns the Authority which is the package name of the target app.
* See {@link android.content.ComponentName}.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

between paragraphs (https://google..io/styleguide/javaguide.html#s7.1.2-javadoc-paragraphs)

public class BinderInternal {

/**
* Set the receiver's {@link IBinder} using {@link IBinderReceiver#set(IBinder)}.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

public static ServerSecurityPolicy serverInternalOnly() {
return new ServerSecurityPolicy();
}

/**
* Creates a default {@link SecurityPolicy} that checks authorization based on UID.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"... that allows access only to callers with the same UID as the current process."

YifeiZhuang added a commit to YifeiZhuang/grpc-java that referenced this pull request Dec 12, 2022
@github-actions-actions bot locked as resolved and limited conversation to collaborators Mar 1, 2023
Sign up for free to subscribe to this conversation on . Already have an account? Sign in.
kokoro:runAdd this label to a PR to tell Kokoro the code is safe and tests can be run
None yet

Successfully merging this pull request may close these issues.