2016-12-22 1 views
0

저는 eezee POS와 eeZee PAY for xam 용 바인딩을 만들고 있습니다. android 및 iOS.Xamarin 안드로이드 - 바인딩 생성 문제

고맙게도 eeZee POS/Pay 바인딩의 대부분은 매우 간단합니다. 그러나 몇 가지 문제가 있습니다. 어떻게 수정해야하는지 잘 모르겠습니다.

먼저 - 메소드 또는 클래스 이름을 다음과 같이 매핑하는 방법이 있습니까? 다른 뭔가? metadata.xml 파일을 매핑 할 수 있어야합니다.

다음 내가이가 global:: 후 이름이 아니므로 구축하는 데 실패이

public static string Bold (params global:: string[] content) 

처럼 보이는 방법 중 몇 가지를 가지고있다. 여기에는 어떤 형식의 매핑도 없으므로 변형 파일 중 하나에서 global::을 제거하는 방법이 있습니까?

마지막으로 수동으로 1과 2를 수정하고 빌드하면 장애없이 dll을 생성합니다. pos 바인딩을 사용하려고하면 Java.Lang.NoClassDefFoundError (com.thepaymenthouse.ezpossdk,EZFactory$1)이 발생합니다. 내가 볼 수있는 것에서 이것은 뭔가 바르게 묶이지 않았 음을 의미합니다. 이 문제를 추적 할 수있는 방법이 있습니까?

답변

0

Xamarin에서 제공하는 iOS 및 Android 라이브러리 바인딩에 대한 설명서가 여기에 어떻게 링크되어 있는지 자세히 읽어 보시기 바랍니다.

아이폰 OS ->https://developer.xamarin.com/guides/cross-platform/macios/binding/

안드로이드 -> 난 당신이, 바인딩 자 마린 안드로이드에 대해 이야기하면 metadata.xml을 언급 한 것을 고려하고 생각하는 첫 번째 질문에 대한 특히 https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/

. 문제를 해결하기 위해 당신은 단순히 다음 링크를

https://developer.xamarin.com/guides/android/advanced_topics/binding-a-java-library/customizing-bindings/java-bindings-metadata/#Renaming_Members

두 번째 문제에

세부 사항은

을 NewName에 따라 귀하의 metadata.xml 내부 규칙을 추가 할 필요는 약간의 오해의 소지가 더 잘 설명해 줄 수 있니? 코드의 해당 부분은 어디에 있습니까?

마지막 오류 인 Java.Lang.NoClassDefFoundError에 대해서는 바인딩하는 동안 문제가 발생했다고 생각합니다. 오류가 Java 바인딩과 관련되어 있다고 생각하면 프로젝트에서 생성 한 클래스 인 "obj /"디버그 또는 릴리스 "/ 폴더에있는"바인딩 프로젝트 "의 디렉토리에서 확인할 수 있습니다. 찾는 중이다.