2016-12-23 1 views
-2

내 xamarin 크로스 플랫폼 PCL 구성 요소에서 암호화 휴대용 클래스 라이브러리 (탄력성 같은)를 추가하지 않고 암호화 방법 (ios 및 android 용)을 구현하고 싶습니다. 어떻게 할 수 있습니까?xamarin 크로스 플랫폼 암호화 PCL

답변

0

추상화해야합니다. 이것은 Inversion of Control을 통해 얻을 수 있습니다. Inversion of Control에서는 암호화 클래스의 기능을 설명하는 인터페이스를 만듭니다.

그런 다음 지원하려는 각 플랫폼에 대해 해당 인터페이스를 구현합니다.

그러면 PCL은 인터페이스에 대해서만 알 수있는 반면 런타임에는 해당 플랫폼의 실제 구현을 바꿀 것입니다.

일반적으로 이는 IoC 컨테이너를 사용하여 수행됩니다. 그러나 미끼와 전환 패턴을 사용할 수도 있습니다.

자신의 암호화 코드에 의존하는 대신 Xamarin/PCL 코드에서 사용할 수있는 PCLCrypto, Bouncy Castle 또는 기타 기존 라이브러리를 조사해보십시오.

+0

PCLCrypto, Bouncy Castle 또는 다른 휴대용 클래스 라이브러리를 암호화에 사용하는 경우 내 PCL 구성 요소를 참조하는 사람은 프로젝트에서 위의 동일한 라이브러리를 참조해야합니다. apk와 컴포넌트 크기에 여분의 메모리를 추가할까요? (또한 PCL Crypto가 안드로이드 빌드에서 에러를 던지고 있습니다) 2. IOC로 MVVM 라이트를 사용하고 있습니다. 다른 제안이 있습니까? 대본? – saravanan

관련 문제