有沒有人成功創建了card.io包裝他們願意分享,可以在單可用於Android應用程序或有人能揭示一些輕我在做什麼錯誤?card.io單爲Android(Xamarin工作室)
- 創建一個新的Android 綁定的Java庫項目
- 添加.jar和.so文件從card.io SDK 3.0.3,一定要使用現有的文件夾結構
添加以下變換/ EnumMethods。 XML解析編譯器錯誤:
<mapping jni-class="io/card/payment/CardIOActivity"> <method jni-name="onActivityResult" parameter="p1" clr-enum-type="Android.App.Result" /> </mapping>
- 添加在我的主要應用上述庫的引用
編譯的一切,我可以訪問card.io類:
using IO.Card.Payment;
private void WireupScanCardButton()
{
Log.Debug(this.GetType().Name, "WireupScanCardButton");
this.ScanCardButton.Click += delegate
{
Log.Debug(this.GetType().Name, "ScanCard.Click");
var intent = new Intent(this, typeof(CardIOActivity));
// Required for authentication with card.io
intent.PutExtra(CardIOActivity.ExtraAppToken, "<MY PRIVATE TOKEN HERE>");
// Customize these values to suit your needs.
intent.PutExtra(CardIOActivity.ExtraNoCamera, false);
intent.PutExtra(CardIOActivity.ExtraSuppressManualEntry, true);
intent.PutExtra(CardIOActivity.ExtraRequireExpiry, false);
intent.PutExtra(CardIOActivity.ExtraRequireCvv, false);
intent.PutExtra(CardIOActivity.ExtraRequireZip, false);
// Run the Activity
this.StartActivityForResult(intent, 0);
};
}
但是,我總是出現以下錯誤:
該設備無法使用相機來讀取卡號
注:
- 我曾嘗試在幾個不同的物理設備
- 的card.io.jar文件具有的生成操作運行:EmbeddedJar
- 的.so文件,有一個生成操作:EmbeddedNativeLibrary
- 我明確設置阿比在項目的ItemGroup
每個.so文件我很新到Android/Xamarin的,所以花的時間比編碼研究。
的.so文件,不會出現要在.apk文件
編輯:
的.so文件,似乎要由編譯得到回升。 編譯後,如果我檢查obj/Release/文件夾,則存在一個子文件夾native_library_imports根據支持的Abi類型在適當的子文件夾中包含.so文件。
然而,.so文件仍然沒有出現在最終的.apk文件。
logcat的輸出:
04-18 08:12:20.462 D/ActivityAddPaymentSource(5824): ScanCard.Click
04-18 08:12:20.472 E/ActivityManager( 191): exception bw.write()java.io.IOException: Transport endpoint is not connected
04-18 08:12:20.472 I/ActivityManager( 191): Starting: Intent { cmp=com.onetab.android/io.card.payment.CardIOActivity (has extras) } from pid 5824
04-18 08:12:20.472 D/PowerManagerService( 191): acquireWakeLock flags=0x1 tag=ActivityManager-Launch
04-18 08:12:20.492 D/ActivityAddPaymentSource(5824): OnPause
04-18 08:12:20.492 E/Sensors ( 191): GsSensor: line +83 ~~~handle===0~~en==1~~!n
04-18 08:12:20.502 E/Sensors ( 191): GsSensor::setDelay: line +113 ~~~handle===0~~ns==1553152~~!n
04-18 08:12:20.502 E/Sensors ( 191): GsSensor::setDelay: line +113 ~~~handle===0~~ns==-2135896001~~!n
04-18 08:12:20.542 W/card.io (5824): cardioScanErrorNoDeviceSupport: This device cannot use the camera to read card numbers.
04-18 08:12:20.572 E/ActivityManager( 191): exception bw.write()java.io.IOException: Transport endpoint is not connected
04-18 08:12:20.572 D/PowerManagerService( 191): acquireWakeLock flags=0x1 tag=ActivityManager-Launch
04-18 08:12:20.582 E/Sensors ( 191): GsSensor: line +83 ~~~handle===0~~en==0~~!n
04-18 08:12:20.622 D/ActivityAddPaymentSource(5824): OnResume
感謝
感謝您的回覆。我已經編輯了我原來的帖子,提供了更多信息有一些關於**我正在研究的傳輸端點未連接**。 – dalesmckay