1# RemoteAuth Mainline Module
2
3This directory contains code for the RemoteAuth module.
4
5## Directory Structure
6
7`framework`
8 - Contains client side APIs and AIDL files.
9
10`jni`
11 - JNI wrapper for invoking Android APIs from native code.
12
13`native`
14 - Native code implementation for RemoteAuth module services.
15
16`service`
17 - Server side implementation for RemoteAuth module services.
18
19`tests`
20 - Unit/Multi devices tests for RemoteAuth module (both Java and native code).
21
22## IDE setup
23
24### AIDEGen
25
26```sh
27$ source build/envsetup.sh && lunch <TARGET>
28$ cd packages/modules/Connectivity
29$ aidegen .
30# This will launch Intellij project for RemoteAuth module.
31```
32
33## Build and Install
34
35```sh
36$ source build/envsetup.sh && lunch <TARGET>
37$ m com.android.tethering deapexer
38$ $ANDROID_BUILD_TOP/out/host/linux-x86/bin/deapexer decompress --input \
39    ${ANDROID_PRODUCT_OUT}/system/apex/com.android.tethering.capex \
40    --output /tmp/tethering.apex
41$ adb install -r /tmp/tethering.apex
42```
43