10 , io, xamarin... , ... 2 , "a" "A", , , "IN" ( , , ).
, , , (, ). , , . io jar.
nevermind, :
- , jar, .so ( )
- EnumMethods.xml :
<mapping jni-class="io/card/payment/CardIOActivity">
<method jni-name="onActivityResult" parameter="p1" clr-enum-type="Android.App.Result" />
</mapping>
( int , .net xamarin onActivityResult ( card.io.jar)
3. Metadata.xml ( ):
<attr path="/api/package[@name='io.card.payment']/class[@name='A']/field[@name='a']" name="managedName">AProp</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='M']" name="visibility">public</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='M']" name="name">Mcl</attr>
<attr path="/api/package[@name='io.card.payment']/interface[@name='N']" name="visibility">public</attr>
<attr path="/api/package[@name='io.card.payment']/interface[@name='N']" name="name">Nifc</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='L']" name="visibility">public</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='L']/field[@name='a']" name="managedName">aProp</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='L']/method[@name='a']" name="managedName">aMethod</attr>
<attr path="/api/package[@name='io.card.payment']/class[@name='L']" name="name">Lcl</attr>
( ) iterfaces ( , , - )
<activity android:name="io.card.payment.CardIOActivity" android:configChanges="keyboardHidden|orientation" />
<activity android:name="io.card.payment.DataEntryActivity" android:screenOrientation="portrait"/>
node ( node - )
CardIOActivity , ( , , , )
, , , ... , CreditResult OnActivityResult java cast:
var scanResult = data.GetParcelableExtra(CardIOActivity.ExtraScanResult).JavaCast();
# cast .
- , , , - (, xamarin).
!
ps: answer @xamarin
EDIT:
, github:
https://github.com/wiadran/card.io.xamarin.binding.git