Skip to content
This repository was archived by the owner on Apr 29, 2024. It is now read-only.

Commit f0cee71

Browse files
authored
Merge pull request #611 from xamarin/dabritch-todorest
iOS/Android cert bypass is now identical.
2 parents 97e07f7 + bfe476d commit f0cee71

22 files changed

+244
-133
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
using System.Net.Http;
2+
using TodoREST.Droid;
3+
using Xamarin.Forms;
4+
5+
[assembly: Dependency(typeof(HttpClientHandlerService))]
6+
namespace TodoREST.Droid
7+
{
8+
public class HttpClientHandlerService : IHttpClientHandlerService
9+
{
10+
public HttpClientHandler GetInsecureHandler()
11+
{
12+
HttpClientHandler handler = new HttpClientHandler();
13+
handler.ServerCertificateCustomValidationCallback = (message, cert, chain, errors) =>
14+
{
15+
if (cert.Issuer.Equals("CN=localhost"))
16+
return true;
17+
return errors == System.Net.Security.SslPolicyErrors.None;
18+
};
19+
return handler;
20+
}
21+
}
22+
}

WebServices/TodoREST/Droid/MainActivity.cs

100755100644
Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,6 @@ protected override void OnCreate(Bundle bundle)
1818
Instance = this;
1919
global::Xamarin.Forms.Forms.Init(this, bundle);
2020

21-
#if DEBUG
22-
System.Net.ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) =>
23-
{
24-
if (certificate.Issuer.Equals("CN=localhost"))
25-
return true;
26-
return sslPolicyErrors == System.Net.Security.SslPolicyErrors.None;
27-
};
28-
#endif
29-
3021
LoadApplication(new App());
3122
}
3223
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.todorest">
3-
<uses-sdk android:minSdkVersion="19" />
3+
<uses-sdk android:minSdkVersion="21" />
44
<application android:label="TodoREST"></application>
55
</manifest>

WebServices/TodoREST/Droid/Resources/Resource.designer.cs

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

WebServices/TodoREST/Droid/Resources/layout/Tabbar.axml

100755100644
File mode changed.

WebServices/TodoREST/Droid/Resources/layout/Toolbar.axml

100755100644
File mode changed.

WebServices/TodoREST/Droid/Resources/values/colors.xml

100755100644
File mode changed.

WebServices/TodoREST/Droid/Resources/values/styles.xml

100755100644
File mode changed.

WebServices/TodoREST/Droid/TodoREST.Droid.csproj

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@
2929
<WarningLevel>4</WarningLevel>
3030
<AndroidLinkMode>None</AndroidLinkMode>
3131
<ConsolePause>false</ConsolePause>
32-
<AndroidHttpClientHandlerType>System.Net.Http.HttpClientHandler</AndroidHttpClientHandlerType>
32+
<AndroidHttpClientHandlerType>Xamarin.Android.Net.AndroidClientHandler</AndroidHttpClientHandlerType>
33+
<AndroidTlsProvider>btls</AndroidTlsProvider>
3334
</PropertyGroup>
3435
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
3536
<DebugType>portable</DebugType>
@@ -39,18 +40,19 @@
3940
<WarningLevel>4</WarningLevel>
4041
<AndroidUseSharedRuntime>false</AndroidUseSharedRuntime>
4142
<ConsolePause>false</ConsolePause>
42-
<AndroidHttpClientHandlerType>Xamarin.Android.Net.AndroidClientHandler</AndroidHttpClientHandlerType>
43+
<IntermediateOutputPath></IntermediateOutputPath>
44+
<ExternalConsole>false</ExternalConsole>
45+
<Commandlineparameters></Commandlineparameters>
4346
</PropertyGroup>
4447
<ItemGroup>
45-
<PackageReference Include="Xamarin.Forms">
46-
<Version>4.5.0.396</Version>
47-
</PackageReference>
48+
<PackageReference Include="Xamarin.Forms" Version="4.5.0.396" />
4849
</ItemGroup>
4950
<ItemGroup>
5051
<Reference Include="System" />
5152
<Reference Include="System.Xml" />
5253
<Reference Include="System.Core" />
5354
<Reference Include="Mono.Android" />
55+
<Reference Include="System.Net.Http" />
5456
</ItemGroup>
5557
<ItemGroup>
5658
<ProjectReference Include="..\TodoREST\TodoREST.csproj">
@@ -62,8 +64,10 @@
6264
<Compile Include="MainActivity.cs" />
6365
<Compile Include="Resources\Resource.designer.cs" />
6466
<Compile Include="Properties\AssemblyInfo.cs" />
67+
<Compile Include="HttpClientHandlerService.cs" />
6568
</ItemGroup>
6669
<ItemGroup>
70+
<None Include="app.config" />
6771
<None Include="Resources\AboutResources.txt" />
6872
<None Include="Properties\AndroidManifest.xml" />
6973
<None Include="Assets\AboutAssets.txt" />
@@ -88,4 +92,4 @@
8892
<AndroidResource Include="Resources\values\colors.xml" />
8993
</ItemGroup>
9094
<Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
91-
</Project>
95+
</Project>
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<configuration>
3+
<runtime>
4+
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
5+
<dependentAssembly>
6+
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
7+
<bindingRedirect oldVersion="0.0.0.0-1.5.0.0" newVersion="1.5.0.0" />
8+
</dependentAssembly>
9+
</assemblyBinding>
10+
</runtime>
11+
</configuration>

0 commit comments

Comments
 (0)