Skip to content
This repository was archived by the owner on Nov 16, 2023. It is now read-only.

Commit c794d6d

Browse files
committed
Java Graph, MSAL and Android MSAL wrapper update
1 parent e25407e commit c794d6d

File tree

5 files changed

+35
-13
lines changed

5 files changed

+35
-13
lines changed

app/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,5 @@ dependencies {
5757
androidTestImplementation 'com.android.support.test.espresso:espresso-web:2.2.2'
5858
implementation 'com.microsoft.graph:microsoft-graph:1.2.0'
5959
implementation 'com.microsoft.identity.client:msal:0.2.2'
60+
implementation 'com.microsoft.graph:microsoft-graph-android-auth:0.1.0-SNAPSHOT'
6061
}

app/src/main/AndroidManifest.xml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,13 @@
3232
<meta-data
3333
android:name="android.support.PARENT_ACTIVITY"
3434
android:value="com.microsoft.graph.snippets.SnippetListActivity" />
35-
3635
<activity
3736
android:name="com.microsoft.identity.client.BrowserTabActivity">
3837
<intent-filter>
3938
<action android:name="android.intent.action.VIEW" />
4039
<category android:name="android.intent.category.DEFAULT" />
4140
<category android:name="android.intent.category.BROWSABLE" />
42-
<data android:scheme="msalENTER_YOUR_CLIENT_ID"
41+
<data android:scheme="msalEnter_ClientId_Here"
4342
android:host="auth" />
4443
</intent-filter>
4544
</activity>
@@ -48,8 +47,6 @@
4847
android:value="https://login.microsoftonline.com/common"/>
4948
<meta-data
5049
android:name="com.microsoft.identity.client.ClientId"
51-
android:value="ENTER_YOUR_CLIENT_ID"/>
52-
50+
android:value="Enter_ClientId_Here"/>
5351
</application>
54-
5552
</manifest>

app/src/main/java/com/microsoft/graph/snippets/AuthenticationManager.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,18 @@
1010
import android.content.Context;
1111
import android.util.Log;
1212
import com.microsoft.graph.authentication.IAuthenticationProvider;
13+
import com.microsoft.graph.authentication.MSALAuthenticationProvider;
1314
import com.microsoft.graph.http.IHttpRequest;
14-
import com.microsoft.graph.models.extensions.User;
1515
import com.microsoft.graph.snippets.application.SnippetApp;
16+
import com.microsoft.graph.snippets.util.IManifestReader;
17+
import com.microsoft.graph.snippets.util.ManifestReader;
1618
import com.microsoft.identity.client.AuthenticationCallback;
1719
import com.microsoft.identity.client.AuthenticationResult;
1820
import com.microsoft.identity.client.IAccount;
1921
import com.microsoft.identity.client.PublicClientApplication;
2022
import com.microsoft.identity.client.exception.MsalException;
23+
24+
2125
import java.io.IOException;
2226

2327
/**
@@ -29,14 +33,18 @@ public class AuthenticationManager implements IAuthenticationProvider {
2933
private static PublicClientApplication mPublicClientApplication;
3034
private AuthenticationResult mAuthResult;
3135
private MSALAuthenticationCallback mActivityCallback;
36+
public static MSALAuthenticationProvider msalAuthenticationProvider;
37+
3238
private AuthenticationManager() {
3339
}
3440

3541
public static synchronized AuthenticationManager getInstance() {
3642
if (INSTANCE == null) {
3743
INSTANCE = new AuthenticationManager();
3844
if (mPublicClientApplication == null) {
39-
mPublicClientApplication = new PublicClientApplication(SnippetApp.getApp());
45+
IManifestReader metaDataReader = new ManifestReader();
46+
String clientID = metaDataReader.getApplicationMetadataValueString("com.microsoft.identity.client.ClientId");
47+
mPublicClientApplication = new PublicClientApplication(SnippetApp.getContext(), clientID);
4048
}
4149
}
4250
return INSTANCE;

app/src/main/java/com/microsoft/graph/snippets/application/SnippetApp.java

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,32 +6,45 @@
66

77
import android.app.Application;
88
import android.content.Context;
9-
import com.microsoft.graph.core.DefaultClientConfig;
10-
import com.microsoft.graph.core.IClientConfig;
9+
import com.microsoft.graph.authentication.MSALAuthenticationProvider;
1110
import com.microsoft.graph.requests.extensions.GraphServiceClient;
1211
import com.microsoft.graph.models.extensions.IGraphServiceClient;
1312
import com.microsoft.graph.snippets.AuthenticationManager;
13+
import com.microsoft.graph.snippets.ServiceConstants;
14+
import com.microsoft.graph.snippets.SignInActivity;
1415

1516
public class SnippetApp extends Application {
1617
private static SnippetApp sSnippetApp;
18+
private static SignInActivity signInActivity;
1719
private AuthenticationManager mAuthenticationManager;
1820

1921
public static SnippetApp getApp() {
2022
return sSnippetApp;
2123
}
24+
public static SignInActivity getAppActivity() {return signInActivity;}
2225

2326
@Override
2427
public void onCreate() {
2528
super.onCreate();
2629
sSnippetApp = this;
30+
signInActivity = new SignInActivity();
2731
mAuthenticationManager = AuthenticationManager.getInstance();
2832
}
2933

3034
public IGraphServiceClient getGraphServiceClient() {
31-
IClientConfig clientConfig = DefaultClientConfig.createWithAuthenticationProvider(
32-
mAuthenticationManager
33-
);
34-
return GraphServiceClient.fromConfig(clientConfig);
35+
36+
MSALAuthenticationProvider msalAuthenticationProvider = new MSALAuthenticationProvider(
37+
getAppActivity(),
38+
SnippetApp.getApp(),
39+
mAuthenticationManager.getPublicClient(),
40+
ServiceConstants.SCOPES);
41+
42+
IGraphServiceClient graphClient =
43+
GraphServiceClient
44+
.builder()
45+
.authenticationProvider(msalAuthenticationProvider)
46+
.buildClient();
47+
return graphClient;
3548
}
3649

3750
public static Context getContext() {

build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ allprojects {
1717
repositories {
1818
jcenter()
1919
google()
20+
jcenter{
21+
url 'http://oss.jfrog.org/oss-snapshot-local'
22+
}
2023
}
2124
}
2225

0 commit comments

Comments
 (0)