0

xamarin을 사용하여 추측 항법 응용 프로그램을 구현해야합니다. 이를 위해서는 Android/ios 및 Windows phone에서 만보계/가속도계에 액세스해야합니다. 그들은 자신의 API를 호출 할 것이기 때문에,이 접근법은 PCL 프로젝트에 인터페이스를 생성 한 다음 각 플랫폼에 고유 한 구현 방식을 사용하는 것이라고 생각합니다. 그런 다음 어셈블리를 사용하여 표시 할 수 있습니다. 이 외에도 PCL 프로젝트 자체에서 전체 코드를 구현할 수있는 방법이 있습니까? 각 플랫폼에 고유 한 구현이 없어도됩니까?Xamarin Forms를 사용하여 추측 항법 응용 프로그램 구현

답변

0

응용 프로그램의 논리는 PCL에서 수행 할 수 있지만 만보계 또는 가속도계 호출은 기본적으로 수행해야합니다.

기본적인 접근 방식은 (단지 예)

public interface IPedometer 
{ 
    int GetSteps(); 
} 

이며,이 인터페이스는 PCL입니다.

각 네이티브 플랫폼에서 클래스 (예 : NativePedometer)를 만들고이 인터페이스를 구현하고 네이티브 코드로 결과를 가져옵니다.

각 기본 플랫폼에 종속성 주입을 사용하십시오.

DependencyService.Register<NativePedometer>(); 

다음 PCL에서 아래를 사용하십시오.

DependencyService.Get<IPedometer>() 그리고 PCL에서 비즈니스 로직을 수행하십시오. 이를 통해 플랫폼간에 최대한 많은 코드를 재사용 할 수 있습니다.

가장 좋은 방법이지만 네이티브 코드 작성을 피할 수는 없으며 네이티브 코드를 사용하면 전통적인/네이티브 Xamarin 프로젝트에서 C#을 사용할 수 있습니다.

+0

James Montemagno에는 단계 카운터가 있습니다. 네이티브 구현을 검색 할 때 예제를 훑어보십시오. https://github.com/jamesmontemagno/My-StepCounter –

관련 문제