@@ -0,0 +1,2 @@ | |||
#Tue Oct 08 11:07:15 CST 2019 | |||
gradle.version=4.8 |
@@ -0,0 +1,20 @@ | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<module external.linked.project.id="UmsipsBusiness_ICBChandheld_AS" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" type="JAVA_MODULE" version="4"> | |||
<component name="FacetManager"> | |||
<facet type="java-gradle" name="Java-Gradle"> | |||
<configuration> | |||
<option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" /> | |||
<option name="BUILDABLE" value="false" /> | |||
</configuration> | |||
</facet> | |||
</component> | |||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true"> | |||
<exclude-output /> | |||
<content url="file://$MODULE_DIR$"> | |||
<excludeFolder url="file://$MODULE_DIR$/.gradle" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build" /> | |||
</content> | |||
<orderEntry type="jdk" jdkName="JDK" jdkType="JavaSDK" /> | |||
<orderEntry type="sourceFolder" forTests="false" /> | |||
</component> | |||
</module> |
@@ -0,0 +1,119 @@ | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<module external.linked.project.id=":UmsipsBussiness" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4"> | |||
<component name="FacetManager"> | |||
<facet type="android-gradle" name="Android-Gradle"> | |||
<configuration> | |||
<option name="GRADLE_PROJECT_PATH" value=":UmsipsBussiness" /> | |||
</configuration> | |||
</facet> | |||
<facet type="android" name="Android"> | |||
<configuration> | |||
<option name="SELECTED_BUILD_VARIANT" value="debug" /> | |||
<option name="ASSEMBLE_TASK_NAME" value="assembleDebug" /> | |||
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" /> | |||
<afterSyncTasks> | |||
<task>generateDebugSources</task> | |||
</afterSyncTasks> | |||
<option name="ALLOW_USER_CONFIGURATION" value="false" /> | |||
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" /> | |||
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" /> | |||
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" /> | |||
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" /> | |||
</configuration> | |||
</facet> | |||
</component> | |||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7"> | |||
<output url="file://$MODULE_DIR$/build/intermediates/classes/debug" /> | |||
<output-test url="file://$MODULE_DIR$/build/intermediates/classes/test/debug" /> | |||
<exclude-output /> | |||
<content url="file://$MODULE_DIR$"> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/debug" isTestSource="false" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/debug" isTestSource="false" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> | |||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/build-info" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check-manifest" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaPrecompile" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/splits-support" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/tmp" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/outputs" /> | |||
<excludeFolder url="file://$MODULE_DIR$/build/tmp" /> | |||
</content> | |||
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" /> | |||
<orderEntry type="sourceFolder" forTests="false" /> | |||
</component> | |||
</module> |
@@ -0,0 +1,23 @@ | |||
apply plugin: 'com.android.application' | |||
android { | |||
compileSdkVersion 21 | |||
buildToolsVersion "29.0.2" | |||
defaultConfig { | |||
applicationId "com.neusoft.umsips" | |||
minSdkVersion 11 | |||
targetSdkVersion 21 | |||
compileOptions { | |||
sourceCompatibility JavaVersion.VERSION_1_7 | |||
targetCompatibility JavaVersion.VERSION_1_7 | |||
} | |||
} | |||
buildTypes { | |||
release { | |||
minifyEnabled false | |||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' | |||
} | |||
} | |||
} |
@@ -0,0 +1 @@ | |||
// This file is intentionally left blank as placeholder for parcel declaration. |
@@ -0,0 +1,366 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 检卡过程监听接口定义 | |||
* @author: baoxl | |||
*/ | |||
public interface CheckCardListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for CheckCardListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.CheckCardListener | |||
{ | |||
/** | |||
* 检测到磁条卡 | |||
* @param track - 磁卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onCardSwiped(android.os.Bundle track) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* IC卡上电成功 | |||
*/ | |||
@Override public void onCardPowerUp() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 非接卡激活成功 | |||
*/ | |||
@Override public void onCardActivate() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 检卡超时 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 检卡出错 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* <li>IC_INSERT_ERROR(2) - 插卡失败</li> | |||
* <li>IC_POWERUP_ERROR(3) - 卡上电失败</li> | |||
* <li>RF_PASS_ERROR(4) - 非接挥卡失败</li> | |||
* <li>RF_ACTIVATE_ERROR(5) - 非接卡激活失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.CheckCardListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.CheckCardListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.CheckCardListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.CheckCardListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.CheckCardListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.CheckCardListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.CheckCardListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onCardSwiped: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
this.onCardSwiped(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onCardPowerUp: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onCardPowerUp(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onCardActivate: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onCardActivate(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onTimeout: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onTimeout(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onError(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.CheckCardListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 检测到磁条卡 | |||
* @param track - 磁卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onCardSwiped(android.os.Bundle track) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((track!=null)) { | |||
_data.writeInt(1); | |||
track.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCardSwiped, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCardSwiped(track); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* IC卡上电成功 | |||
*/ | |||
@Override public void onCardPowerUp() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCardPowerUp, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCardPowerUp(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 非接卡激活成功 | |||
*/ | |||
@Override public void onCardActivate() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCardActivate, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCardActivate(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 检卡超时 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onTimeout, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onTimeout(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 检卡出错 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* <li>IC_INSERT_ERROR(2) - 插卡失败</li> | |||
* <li>IC_POWERUP_ERROR(3) - 卡上电失败</li> | |||
* <li>RF_PASS_ERROR(4) - 非接挥卡失败</li> | |||
* <li>RF_ACTIVATE_ERROR(5) - 非接卡激活失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
_data.writeString(message); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(error, message); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.CheckCardListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onCardSwiped = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onCardPowerUp = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_onCardActivate = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_onTimeout = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.CheckCardListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.CheckCardListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 检测到磁条卡 | |||
* @param track - 磁卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
public void onCardSwiped(android.os.Bundle track) throws android.os.RemoteException; | |||
/** | |||
* IC卡上电成功 | |||
*/ | |||
public void onCardPowerUp() throws android.os.RemoteException; | |||
/** | |||
* 非接卡激活成功 | |||
*/ | |||
public void onCardActivate() throws android.os.RemoteException; | |||
/** | |||
* 检卡超时 | |||
*/ | |||
public void onTimeout() throws android.os.RemoteException; | |||
/** | |||
* 检卡出错 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* <li>IC_INSERT_ERROR(2) - 插卡失败</li> | |||
* <li>IC_POWERUP_ERROR(3) - 卡上电失败</li> | |||
* <li>RF_PASS_ERROR(4) - 非接挥卡失败</li> | |||
* <li>RF_ACTIVATE_ERROR(5) - 非接卡激活失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
public void onError(int error, java.lang.String message) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,184 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 蜂鸣器对象 | |||
* @author: baoxl | |||
*/ | |||
public interface IBeeper extends android.os.IInterface | |||
{ | |||
/** Default implementation for IBeeper. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IBeeper | |||
{ | |||
/** | |||
* 开始蜂鸣<br/> | |||
* 通过调用该方法可以让POS的蜂鸣器持续鸣叫msec毫秒。如果用户设定msec为0则不进行鸣叫。 | |||
* 蜂鸣器发声是采用非阻塞方式进行的,调用该函数之后,程序立即退出,不会停留在该函数。 | |||
* @param msec - 需要鸣叫的时间,单位ms | |||
*/ | |||
@Override public void startBeep(int msec) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 停止蜂鸣<br/> | |||
* 调用该方法后立即停止鸣叫 | |||
*/ | |||
@Override public void stopBeep() throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IBeeper | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IBeeper"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IBeeper interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IBeeper asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IBeeper))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IBeeper)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IBeeper.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_startBeep: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.startBeep(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_stopBeep: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.stopBeep(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IBeeper | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 开始蜂鸣<br/> | |||
* 通过调用该方法可以让POS的蜂鸣器持续鸣叫msec毫秒。如果用户设定msec为0则不进行鸣叫。 | |||
* 蜂鸣器发声是采用非阻塞方式进行的,调用该函数之后,程序立即退出,不会停留在该函数。 | |||
* @param msec - 需要鸣叫的时间,单位ms | |||
*/ | |||
@Override public void startBeep(int msec) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(msec); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startBeep, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().startBeep(msec); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 停止蜂鸣<br/> | |||
* 调用该方法后立即停止鸣叫 | |||
*/ | |||
@Override public void stopBeep() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_stopBeep, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().stopBeep(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IBeeper sDefaultImpl; | |||
} | |||
static final int TRANSACTION_startBeep = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_stopBeep = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IBeeper impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IBeeper getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 开始蜂鸣<br/> | |||
* 通过调用该方法可以让POS的蜂鸣器持续鸣叫msec毫秒。如果用户设定msec为0则不进行鸣叫。 | |||
* 蜂鸣器发声是采用非阻塞方式进行的,调用该函数之后,程序立即退出,不会停留在该函数。 | |||
* @param msec - 需要鸣叫的时间,单位ms | |||
*/ | |||
public void startBeep(int msec) throws android.os.RemoteException; | |||
/** | |||
* 停止蜂鸣<br/> | |||
* 调用该方法后立即停止鸣叫 | |||
*/ | |||
public void stopBeep() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,799 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 终端设备信息对象 | |||
* @author: baoxl | |||
*/ | |||
public interface IDeviceInfo extends android.os.IInterface | |||
{ | |||
/** Default implementation for IDeviceInfo. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IDeviceInfo | |||
{ | |||
/** | |||
* 获取终端序列号 | |||
* @return 终端设备序列号 | |||
*/ | |||
@Override public java.lang.String getSerialNo() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端IMSI号 | |||
* @return 终端IMSI号 | |||
*/ | |||
@Override public java.lang.String getIMSI() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端IMEI号 | |||
* @return 终端IMEI号 | |||
*/ | |||
@Override public java.lang.String getIMEI() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取SIM卡ICCID | |||
* @return 终端SIM卡ICCID | |||
*/ | |||
@Override public java.lang.String getICCID() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取厂商名称 | |||
* @return 终端厂商名称 | |||
*/ | |||
@Override public java.lang.String getManufacture() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端设备型号 | |||
* @return 终端设备型号 | |||
*/ | |||
@Override public java.lang.String getModel() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端Android操作系统版本 | |||
* @return 终端Android系统版本 | |||
*/ | |||
@Override public java.lang.String getAndroidOSVersion() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端Android内核版本 | |||
* @return 终端Android内核版本 | |||
*/ | |||
@Override public java.lang.String getAndroidKernelVersion() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端ROM版本 | |||
* @return 终端系统ROM版本 | |||
*/ | |||
@Override public java.lang.String getROMVersion() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端固件版本 | |||
* @return 终端固件版本 | |||
*/ | |||
@Override public java.lang.String getFirmwareVersion() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取终端硬件版本 | |||
* @return 终端硬件版本 -后标贴的硬件版本号,如H:L4200151361,测试机器可能没有录入 | |||
*/ | |||
@Override public java.lang.String getHardwareVersion() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 更新终端系统时间 | |||
* @param date - 日期,格式yyyyMMdd | |||
* @param time - 时间,格式HHmmss | |||
* @return 更新成功返回true,失败返回false | |||
**/ | |||
@Override public boolean updateSystemTime(java.lang.String date, java.lang.String time) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 设置系统功能(设置全局有效) | |||
* @param bundle - 设置参数 | |||
* <ul> | |||
* <li>HOMEKEY(boolean) – 是否允许使用HOME键,true可用,false禁用(注:在机器重启后会取消屏蔽)</li> | |||
* <li>STATUSBARKEY(boolean) – 是否允许使用下拉菜单,true可用,false禁用</li> | |||
* </ul> | |||
* @return 设置成功返回true,失败返回false | |||
**/ | |||
@Override public boolean setSystemFunction(android.os.Bundle bundle) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 获取银联终端唯一终端号TUSN | |||
* @param mode 模式, 预留参数, 需为0 | |||
* @param input 指 对TUSN计算 MAC 时,参与计算的随机数(随机因子),允许范围:4~10字节 | |||
* @return 成功返回TUSN数据,失败返回null。 | |||
**/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.TusnData getTUSN(int mode, byte[] input) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IDeviceInfo | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IDeviceInfo"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IDeviceInfo interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceInfo asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IDeviceInfo))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IDeviceInfo)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IDeviceInfo.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_getSerialNo: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getSerialNo(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getIMSI: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getIMSI(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getIMEI: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getIMEI(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getICCID: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getICCID(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getManufacture: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getManufacture(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getModel: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getModel(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getAndroidOSVersion: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getAndroidOSVersion(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getAndroidKernelVersion: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getAndroidKernelVersion(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getROMVersion: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getROMVersion(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getFirmwareVersion: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getFirmwareVersion(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_getHardwareVersion: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getHardwareVersion(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
case TRANSACTION_updateSystemTime: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _arg0; | |||
_arg0 = data.readString(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
boolean _result = this.updateSystemTime(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_setSystemFunction: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
boolean _result = this.setSystemFunction(_arg0); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_getTUSN: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
com.icbc.smartpos.deviceservice.aidl.TusnData _result = this.getTUSN(_arg0, _arg1); | |||
reply.writeNoException(); | |||
if ((_result!=null)) { | |||
reply.writeInt(1); | |||
_result.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); | |||
} | |||
else { | |||
reply.writeInt(0); | |||
} | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IDeviceInfo | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 获取终端序列号 | |||
* @return 终端设备序列号 | |||
*/ | |||
@Override public java.lang.String getSerialNo() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getSerialNo, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getSerialNo(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端IMSI号 | |||
* @return 终端IMSI号 | |||
*/ | |||
@Override public java.lang.String getIMSI() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getIMSI, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getIMSI(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端IMEI号 | |||
* @return 终端IMEI号 | |||
*/ | |||
@Override public java.lang.String getIMEI() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getIMEI, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getIMEI(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取SIM卡ICCID | |||
* @return 终端SIM卡ICCID | |||
*/ | |||
@Override public java.lang.String getICCID() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getICCID, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getICCID(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取厂商名称 | |||
* @return 终端厂商名称 | |||
*/ | |||
@Override public java.lang.String getManufacture() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getManufacture, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getManufacture(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端设备型号 | |||
* @return 终端设备型号 | |||
*/ | |||
@Override public java.lang.String getModel() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getModel, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getModel(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端Android操作系统版本 | |||
* @return 终端Android系统版本 | |||
*/ | |||
@Override public java.lang.String getAndroidOSVersion() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getAndroidOSVersion, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getAndroidOSVersion(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端Android内核版本 | |||
* @return 终端Android内核版本 | |||
*/ | |||
@Override public java.lang.String getAndroidKernelVersion() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getAndroidKernelVersion, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getAndroidKernelVersion(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端ROM版本 | |||
* @return 终端系统ROM版本 | |||
*/ | |||
@Override public java.lang.String getROMVersion() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getROMVersion, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getROMVersion(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端固件版本 | |||
* @return 终端固件版本 | |||
*/ | |||
@Override public java.lang.String getFirmwareVersion() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getFirmwareVersion, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getFirmwareVersion(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取终端硬件版本 | |||
* @return 终端硬件版本 -后标贴的硬件版本号,如H:L4200151361,测试机器可能没有录入 | |||
*/ | |||
@Override public java.lang.String getHardwareVersion() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getHardwareVersion, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getHardwareVersion(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 更新终端系统时间 | |||
* @param date - 日期,格式yyyyMMdd | |||
* @param time - 时间,格式HHmmss | |||
* @return 更新成功返回true,失败返回false | |||
**/ | |||
@Override public boolean updateSystemTime(java.lang.String date, java.lang.String time) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeString(date); | |||
_data.writeString(time); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_updateSystemTime, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().updateSystemTime(date, time); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 设置系统功能(设置全局有效) | |||
* @param bundle - 设置参数 | |||
* <ul> | |||
* <li>HOMEKEY(boolean) – 是否允许使用HOME键,true可用,false禁用(注:在机器重启后会取消屏蔽)</li> | |||
* <li>STATUSBARKEY(boolean) – 是否允许使用下拉菜单,true可用,false禁用</li> | |||
* </ul> | |||
* @return 设置成功返回true,失败返回false | |||
**/ | |||
@Override public boolean setSystemFunction(android.os.Bundle bundle) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((bundle!=null)) { | |||
_data.writeInt(1); | |||
bundle.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_setSystemFunction, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().setSystemFunction(bundle); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取银联终端唯一终端号TUSN | |||
* @param mode 模式, 预留参数, 需为0 | |||
* @param input 指 对TUSN计算 MAC 时,参与计算的随机数(随机因子),允许范围:4~10字节 | |||
* @return 成功返回TUSN数据,失败返回null。 | |||
**/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.TusnData getTUSN(int mode, byte[] input) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.TusnData _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(mode); | |||
_data.writeByteArray(input); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getTUSN, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getTUSN(mode, input); | |||
} | |||
_reply.readException(); | |||
if ((0!=_reply.readInt())) { | |||
_result = com.icbc.smartpos.deviceservice.aidl.TusnData.CREATOR.createFromParcel(_reply); | |||
} | |||
else { | |||
_result = null; | |||
} | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceInfo sDefaultImpl; | |||
} | |||
static final int TRANSACTION_getSerialNo = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_getIMSI = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_getIMEI = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_getICCID = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_getManufacture = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_getModel = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_getAndroidOSVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
static final int TRANSACTION_getAndroidKernelVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); | |||
static final int TRANSACTION_getROMVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); | |||
static final int TRANSACTION_getFirmwareVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); | |||
static final int TRANSACTION_getHardwareVersion = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); | |||
static final int TRANSACTION_updateSystemTime = (android.os.IBinder.FIRST_CALL_TRANSACTION + 11); | |||
static final int TRANSACTION_setSystemFunction = (android.os.IBinder.FIRST_CALL_TRANSACTION + 12); | |||
static final int TRANSACTION_getTUSN = (android.os.IBinder.FIRST_CALL_TRANSACTION + 13); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IDeviceInfo impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceInfo getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 获取终端序列号 | |||
* @return 终端设备序列号 | |||
*/ | |||
public java.lang.String getSerialNo() throws android.os.RemoteException; | |||
/** | |||
* 获取终端IMSI号 | |||
* @return 终端IMSI号 | |||
*/ | |||
public java.lang.String getIMSI() throws android.os.RemoteException; | |||
/** | |||
* 获取终端IMEI号 | |||
* @return 终端IMEI号 | |||
*/ | |||
public java.lang.String getIMEI() throws android.os.RemoteException; | |||
/** | |||
* 获取SIM卡ICCID | |||
* @return 终端SIM卡ICCID | |||
*/ | |||
public java.lang.String getICCID() throws android.os.RemoteException; | |||
/** | |||
* 获取厂商名称 | |||
* @return 终端厂商名称 | |||
*/ | |||
public java.lang.String getManufacture() throws android.os.RemoteException; | |||
/** | |||
* 获取终端设备型号 | |||
* @return 终端设备型号 | |||
*/ | |||
public java.lang.String getModel() throws android.os.RemoteException; | |||
/** | |||
* 获取终端Android操作系统版本 | |||
* @return 终端Android系统版本 | |||
*/ | |||
public java.lang.String getAndroidOSVersion() throws android.os.RemoteException; | |||
/** | |||
* 获取终端Android内核版本 | |||
* @return 终端Android内核版本 | |||
*/ | |||
public java.lang.String getAndroidKernelVersion() throws android.os.RemoteException; | |||
/** | |||
* 获取终端ROM版本 | |||
* @return 终端系统ROM版本 | |||
*/ | |||
public java.lang.String getROMVersion() throws android.os.RemoteException; | |||
/** | |||
* 获取终端固件版本 | |||
* @return 终端固件版本 | |||
*/ | |||
public java.lang.String getFirmwareVersion() throws android.os.RemoteException; | |||
/** | |||
* 获取终端硬件版本 | |||
* @return 终端硬件版本 -后标贴的硬件版本号,如H:L4200151361,测试机器可能没有录入 | |||
*/ | |||
public java.lang.String getHardwareVersion() throws android.os.RemoteException; | |||
/** | |||
* 更新终端系统时间 | |||
* @param date - 日期,格式yyyyMMdd | |||
* @param time - 时间,格式HHmmss | |||
* @return 更新成功返回true,失败返回false | |||
**/ | |||
public boolean updateSystemTime(java.lang.String date, java.lang.String time) throws android.os.RemoteException; | |||
/** | |||
* 设置系统功能(设置全局有效) | |||
* @param bundle - 设置参数 | |||
* <ul> | |||
* <li>HOMEKEY(boolean) – 是否允许使用HOME键,true可用,false禁用(注:在机器重启后会取消屏蔽)</li> | |||
* <li>STATUSBARKEY(boolean) – 是否允许使用下拉菜单,true可用,false禁用</li> | |||
* </ul> | |||
* @return 设置成功返回true,失败返回false | |||
**/ | |||
public boolean setSystemFunction(android.os.Bundle bundle) throws android.os.RemoteException; | |||
/** | |||
* 获取银联终端唯一终端号TUSN | |||
* @param mode 模式, 预留参数, 需为0 | |||
* @param input 指 对TUSN计算 MAC 时,参与计算的随机数(随机因子),允许范围:4~10字节 | |||
* @return 成功返回TUSN数据,失败返回null。 | |||
**/ | |||
public com.icbc.smartpos.deviceservice.aidl.TusnData getTUSN(int mode, byte[] input) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,609 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 设备服务对象,提供范围终端各外设对象的服务接口 | |||
* @author: baoxl | |||
*/ | |||
public interface IDeviceService extends android.os.IInterface | |||
{ | |||
/** Default implementation for IDeviceService. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IDeviceService | |||
{ | |||
/** | |||
* 获取蜂鸣器操作对象 | |||
* @return IBeeper对象,参见IBeeper.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IBeeper getBeeper() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取LED灯操作对象 | |||
* @return ILed对象,参见ILed.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.ILed getLed() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取串口操作对象 | |||
* @return ISerialPort对象,参见ISerialPort.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.ISerialPort getSerialPort() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取扫码器操作对象 | |||
* @param cameraId - 0前置扫码器,1后置扫码器 | |||
* @return IScanner对象,参见IScanner.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IScanner getScanner(int cameraId) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取磁卡操作句柄 | |||
* @return IMagCardReader对象,参见IMagCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IMagCardReader getMagCardReader() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取IC卡操作对象 | |||
* @return IC卡操作对象,参见IInsertCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IInsertCardReader getInsertCardReader() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取RF卡操作对象 | |||
* @return RF卡操作对象,参见IRFCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IRFCardReader getRFCardReader() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取密码键盘操作对象 | |||
* @param kapId 密码键盘kapId索引,每个kapId对一个逻辑密码键盘 | |||
* @return IPinpad对象,参见IPinpad.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPinpad getPinpad(int kapId) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取打印机操作对象 | |||
* @return IPrinter对象,参见IPrinter.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPrinter getPrinter() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 获取PBOC(EMV)流程操作对象 | |||
* @return IPBOC对象,参见IPBOC.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPBOC getPBOC() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 设备操作对象 | |||
* @return IDeviceInfo对象,参见IDeviceInfo.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IDeviceInfo getDeviceInfo() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IDeviceService | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IDeviceService"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IDeviceService interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceService asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IDeviceService))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IDeviceService)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IDeviceService.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_getBeeper: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IBeeper _result = this.getBeeper(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getLed: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.ILed _result = this.getLed(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getSerialPort: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.ISerialPort _result = this.getSerialPort(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getScanner: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
com.icbc.smartpos.deviceservice.aidl.IScanner _result = this.getScanner(_arg0); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getMagCardReader: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IMagCardReader _result = this.getMagCardReader(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getInsertCardReader: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IInsertCardReader _result = this.getInsertCardReader(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getRFCardReader: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IRFCardReader _result = this.getRFCardReader(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getPinpad: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
com.icbc.smartpos.deviceservice.aidl.IPinpad _result = this.getPinpad(_arg0); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getPrinter: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IPrinter _result = this.getPrinter(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getPBOC: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IPBOC _result = this.getPBOC(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
case TRANSACTION_getDeviceInfo: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.IDeviceInfo _result = this.getDeviceInfo(); | |||
reply.writeNoException(); | |||
reply.writeStrongBinder((((_result!=null))?(_result.asBinder()):(null))); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IDeviceService | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 获取蜂鸣器操作对象 | |||
* @return IBeeper对象,参见IBeeper.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IBeeper getBeeper() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IBeeper _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getBeeper, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getBeeper(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IBeeper.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取LED灯操作对象 | |||
* @return ILed对象,参见ILed.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.ILed getLed() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.ILed _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getLed, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getLed(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.ILed.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取串口操作对象 | |||
* @return ISerialPort对象,参见ISerialPort.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.ISerialPort getSerialPort() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.ISerialPort _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getSerialPort, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getSerialPort(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.ISerialPort.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取扫码器操作对象 | |||
* @param cameraId - 0前置扫码器,1后置扫码器 | |||
* @return IScanner对象,参见IScanner.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IScanner getScanner(int cameraId) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IScanner _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(cameraId); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getScanner, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getScanner(cameraId); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IScanner.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取磁卡操作句柄 | |||
* @return IMagCardReader对象,参见IMagCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IMagCardReader getMagCardReader() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IMagCardReader _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getMagCardReader, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getMagCardReader(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IMagCardReader.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取IC卡操作对象 | |||
* @return IC卡操作对象,参见IInsertCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IInsertCardReader getInsertCardReader() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IInsertCardReader _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getInsertCardReader, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getInsertCardReader(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IInsertCardReader.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取RF卡操作对象 | |||
* @return RF卡操作对象,参见IRFCardReader.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IRFCardReader getRFCardReader() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IRFCardReader _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getRFCardReader, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getRFCardReader(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IRFCardReader.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取密码键盘操作对象 | |||
* @param kapId 密码键盘kapId索引,每个kapId对一个逻辑密码键盘 | |||
* @return IPinpad对象,参见IPinpad.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPinpad getPinpad(int kapId) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IPinpad _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(kapId); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getPinpad, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getPinpad(kapId); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IPinpad.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取打印机操作对象 | |||
* @return IPrinter对象,参见IPrinter.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPrinter getPrinter() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IPrinter _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getPrinter, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getPrinter(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IPrinter.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 获取PBOC(EMV)流程操作对象 | |||
* @return IPBOC对象,参见IPBOC.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IPBOC getPBOC() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IPBOC _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getPBOC, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getPBOC(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IPBOC.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 设备操作对象 | |||
* @return IDeviceInfo对象,参见IDeviceInfo.aidl类 | |||
*/ | |||
@Override public com.icbc.smartpos.deviceservice.aidl.IDeviceInfo getDeviceInfo() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
com.icbc.smartpos.deviceservice.aidl.IDeviceInfo _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getDeviceInfo, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getDeviceInfo(); | |||
} | |||
_reply.readException(); | |||
_result = com.icbc.smartpos.deviceservice.aidl.IDeviceInfo.Stub.asInterface(_reply.readStrongBinder()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceService sDefaultImpl; | |||
} | |||
static final int TRANSACTION_getBeeper = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_getLed = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_getSerialPort = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_getScanner = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_getMagCardReader = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_getInsertCardReader = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_getRFCardReader = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
static final int TRANSACTION_getPinpad = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); | |||
static final int TRANSACTION_getPrinter = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); | |||
static final int TRANSACTION_getPBOC = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); | |||
static final int TRANSACTION_getDeviceInfo = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IDeviceService impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IDeviceService getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 获取蜂鸣器操作对象 | |||
* @return IBeeper对象,参见IBeeper.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IBeeper getBeeper() throws android.os.RemoteException; | |||
/** | |||
* 获取LED灯操作对象 | |||
* @return ILed对象,参见ILed.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.ILed getLed() throws android.os.RemoteException; | |||
/** | |||
* 获取串口操作对象 | |||
* @return ISerialPort对象,参见ISerialPort.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.ISerialPort getSerialPort() throws android.os.RemoteException; | |||
/** | |||
* 获取扫码器操作对象 | |||
* @param cameraId - 0前置扫码器,1后置扫码器 | |||
* @return IScanner对象,参见IScanner.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IScanner getScanner(int cameraId) throws android.os.RemoteException; | |||
/** | |||
* 获取磁卡操作句柄 | |||
* @return IMagCardReader对象,参见IMagCardReader.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IMagCardReader getMagCardReader() throws android.os.RemoteException; | |||
/** | |||
* 获取IC卡操作对象 | |||
* @return IC卡操作对象,参见IInsertCardReader.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IInsertCardReader getInsertCardReader() throws android.os.RemoteException; | |||
/** | |||
* 获取RF卡操作对象 | |||
* @return RF卡操作对象,参见IRFCardReader.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IRFCardReader getRFCardReader() throws android.os.RemoteException; | |||
/** | |||
* 获取密码键盘操作对象 | |||
* @param kapId 密码键盘kapId索引,每个kapId对一个逻辑密码键盘 | |||
* @return IPinpad对象,参见IPinpad.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IPinpad getPinpad(int kapId) throws android.os.RemoteException; | |||
/** | |||
* 获取打印机操作对象 | |||
* @return IPrinter对象,参见IPrinter.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IPrinter getPrinter() throws android.os.RemoteException; | |||
/** | |||
* 获取PBOC(EMV)流程操作对象 | |||
* @return IPBOC对象,参见IPBOC.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IPBOC getPBOC() throws android.os.RemoteException; | |||
/** | |||
* 设备操作对象 | |||
* @return IDeviceInfo对象,参见IDeviceInfo.aidl类 | |||
*/ | |||
public com.icbc.smartpos.deviceservice.aidl.IDeviceInfo getDeviceInfo() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,345 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 接触式IC读卡器对象 | |||
* @author: baoxl | |||
*/ | |||
public interface IInsertCardReader extends android.os.IInterface | |||
{ | |||
/** Default implementation for IInsertCardReader. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IInsertCardReader | |||
{ | |||
/** | |||
* 卡上电 | |||
* @return 上电成功true,上电失败false。 | |||
*/ | |||
@Override public boolean powerUp() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 卡下电 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
@Override public boolean powerDown() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
@Override public boolean isCardIn() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据,失败返回null。 | |||
*/ | |||
@Override public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
@Override public byte[] cardReset(int resetType) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IInsertCardReader | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IInsertCardReader"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IInsertCardReader interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IInsertCardReader asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IInsertCardReader))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IInsertCardReader)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IInsertCardReader.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_powerUp: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.powerUp(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_powerDown: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.powerDown(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_isCardIn: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.isCardIn(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_exchangeApdu: | |||
{ | |||
data.enforceInterface(descriptor); | |||
byte[] _arg0; | |||
_arg0 = data.createByteArray(); | |||
byte[] _result = this.exchangeApdu(_arg0); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
case TRANSACTION_cardReset: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _result = this.cardReset(_arg0); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IInsertCardReader | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 卡上电 | |||
* @return 上电成功true,上电失败false。 | |||
*/ | |||
@Override public boolean powerUp() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_powerUp, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().powerUp(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 卡下电 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
@Override public boolean powerDown() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_powerDown, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().powerDown(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
@Override public boolean isCardIn() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_isCardIn, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().isCardIn(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据,失败返回null。 | |||
*/ | |||
@Override public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeByteArray(apdu); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_exchangeApdu, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().exchangeApdu(apdu); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
@Override public byte[] cardReset(int resetType) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(resetType); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_cardReset, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().cardReset(resetType); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IInsertCardReader sDefaultImpl; | |||
} | |||
static final int TRANSACTION_powerUp = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_powerDown = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_isCardIn = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_exchangeApdu = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_cardReset = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IInsertCardReader impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IInsertCardReader getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 卡上电 | |||
* @return 上电成功true,上电失败false。 | |||
*/ | |||
public boolean powerUp() throws android.os.RemoteException; | |||
/** | |||
* 卡下电 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
public boolean powerDown() throws android.os.RemoteException; | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
public boolean isCardIn() throws android.os.RemoteException; | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据,失败返回null。 | |||
*/ | |||
public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException; | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
public byte[] cardReset(int resetType) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,217 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 设备LED灯对象 | |||
* @author: baoxl | |||
*/ | |||
public interface ILed extends android.os.IInterface | |||
{ | |||
/** Default implementation for ILed. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.ILed | |||
{ | |||
/** | |||
* 点亮LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
@Override public void turnOn(int led) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 关闭LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
@Override public void turnOff(int led) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.ILed | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.ILed"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.ILed interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.ILed asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.ILed))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.ILed)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.ILed.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_turnOn: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.turnOn(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_turnOff: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.turnOff(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.ILed | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 点亮LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
@Override public void turnOn(int led) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(led); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_turnOn, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().turnOn(led); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 关闭LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
@Override public void turnOff(int led) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(led); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_turnOff, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().turnOff(led); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ILed sDefaultImpl; | |||
} | |||
static final int TRANSACTION_turnOn = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_turnOff = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.ILed impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ILed getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 点亮LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
public void turnOn(int led) throws android.os.RemoteException; | |||
/** | |||
* 关闭LED灯 | |||
* @param led - 灯标识 | |||
* <ul> | |||
* <li> 1 - 蓝灯</li> | |||
* <li> 2 - 黄灯</li> | |||
* <li> 3 - 绿灯</li> | |||
* <li> 4 - 红灯</li> | |||
* </ul> | |||
*/ | |||
public void turnOff(int led) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,181 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 磁条卡刷卡器对象 | |||
* @author: baoxl | |||
*/ | |||
public interface IMagCardReader extends android.os.IInterface | |||
{ | |||
/** Default implementation for IMagCardReader. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IMagCardReader | |||
{ | |||
/** | |||
* 等待刷卡,获取磁卡卡片的磁道数据 | |||
* @param timeout - 检卡超时时间(单位秒) | |||
* @param listener - 磁卡刷卡监听器 | |||
*/ | |||
@Override public void searchCard(int timeout, com.icbc.smartpos.deviceservice.aidl.MagCardListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 取消等待刷卡 | |||
*/ | |||
@Override public void stopSearch() throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IMagCardReader | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IMagCardReader"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IMagCardReader interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IMagCardReader asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IMagCardReader))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IMagCardReader)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IMagCardReader.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_searchCard: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
com.icbc.smartpos.deviceservice.aidl.MagCardListener _arg1; | |||
_arg1 = com.icbc.smartpos.deviceservice.aidl.MagCardListener.Stub.asInterface(data.readStrongBinder()); | |||
this.searchCard(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_stopSearch: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.stopSearch(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IMagCardReader | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 等待刷卡,获取磁卡卡片的磁道数据 | |||
* @param timeout - 检卡超时时间(单位秒) | |||
* @param listener - 磁卡刷卡监听器 | |||
*/ | |||
@Override public void searchCard(int timeout, com.icbc.smartpos.deviceservice.aidl.MagCardListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(timeout); | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_searchCard, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().searchCard(timeout, listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 取消等待刷卡 | |||
*/ | |||
@Override public void stopSearch() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_stopSearch, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().stopSearch(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IMagCardReader sDefaultImpl; | |||
} | |||
static final int TRANSACTION_searchCard = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_stopSearch = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IMagCardReader impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IMagCardReader getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 等待刷卡,获取磁卡卡片的磁道数据 | |||
* @param timeout - 检卡超时时间(单位秒) | |||
* @param listener - 磁卡刷卡监听器 | |||
*/ | |||
public void searchCard(int timeout, com.icbc.smartpos.deviceservice.aidl.MagCardListener listener) throws android.os.RemoteException; | |||
/** | |||
* 取消等待刷卡 | |||
*/ | |||
public void stopSearch() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,777 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 密码键盘对象<br/> | |||
* 实现金融交易过程中密钥管理、数据加密和PIN输入处理过程。 | |||
* @author: baoxl | |||
*/ | |||
public interface IPinpad extends android.os.IInterface | |||
{ | |||
/** Default implementation for IPinpad. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IPinpad | |||
{ | |||
/** | |||
* 判断密钥是否存在(密钥已下载)<br/> | |||
* @param keyType - 密钥类型 | |||
* <ul> | |||
* <li>0-主密钥</li> | |||
* <li>1-MAC密钥</li> | |||
* <li>2-PIN密钥</li> | |||
* <li>3-TD密钥</li> | |||
* </ul> | |||
* @param keyId - 密钥ID | |||
* @return 存在返回true,不存在返回false | |||
**/ | |||
@Override public boolean isKeyExist(int keyType, int keyId) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 下装TEK密钥<br/> | |||
* TEK是加密主密钥的密钥KEK | |||
* @param keyId - 密钥存储的ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadTEK(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 下装密文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadEncryptMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 下装明文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 下装工作密钥<br/> | |||
* @param keyType - 下装工作密钥类型,1-MAC密钥,2-PIN密钥,3-TD密钥 | |||
* @param mkId - 解密工作密钥的主密钥ID | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadWorkKey(int keyType, int mkId, int wkId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 计算MAC值<br/> | |||
* @param keyId - MAC密钥索引 | |||
* @param data - 计算MAC的数据 | |||
* @return 成功返回mac值,失败返回null | |||
*/ | |||
@Override public byte[] calcMAC(int keyId, byte[] data) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 加密磁道数据<br/> | |||
* @param mode - 加密模式 | |||
* @param keyId - TDK密钥索引 | |||
* @param trkData - 待加密磁道数据 | |||
* @return 成功返回加密后的磁道数据,失败返回null | |||
*/ | |||
@Override public byte[] encryptTrackData(int mode, int keyId, byte[] trkData) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 启动PIN输入<br/> | |||
* @param keyId - PIN密钥索引 | |||
* @param param - PIN输入配置参数 | |||
* <ul> | |||
* <li>pinLimit(byte[]) - 允许输入密码的长度</li> | |||
* <li>timeout(int) - 输入超时时间,单位(秒)</li> | |||
* <li>isOnline(boolean) - 是否联机PIN</li> | |||
* <li>promptString(String) - 提示信息</li> | |||
* <li>pan(String) - 用于加密联机PIN的主帐号(卡号)</li> | |||
* </ul> | |||
* @param listener - PIN输入过程监听器 | |||
* @return | |||
*/ | |||
@Override public void startPinInput(int keyId, android.os.Bundle param, com.icbc.smartpos.deviceservice.aidl.PinInputListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 提交PIN输入 | |||
*/ | |||
@Override public void submitPinInput() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 取消PIN输入过程 | |||
*/ | |||
@Override public void stopPinInput() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 获取最近一次操作的错误<br/> | |||
* @return 错误描述 | |||
*/ | |||
@Override public java.lang.String getLastError() throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IPinpad | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IPinpad"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IPinpad interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IPinpad asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IPinpad))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IPinpad)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IPinpad.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_isKeyExist: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
boolean _result = this.isKeyExist(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_loadTEK: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
boolean _result = this.loadTEK(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_loadEncryptMainKey: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
boolean _result = this.loadEncryptMainKey(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_loadMainKey: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
boolean _result = this.loadMainKey(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_loadWorkKey: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _arg2; | |||
_arg2 = data.readInt(); | |||
byte[] _arg3; | |||
_arg3 = data.createByteArray(); | |||
byte[] _arg4; | |||
_arg4 = data.createByteArray(); | |||
boolean _result = this.loadWorkKey(_arg0, _arg1, _arg2, _arg3, _arg4); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_calcMAC: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
byte[] _result = this.calcMAC(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
case TRANSACTION_encryptTrackData: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
byte[] _result = this.encryptTrackData(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
case TRANSACTION_startPinInput: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
android.os.Bundle _arg1; | |||
if ((0!=data.readInt())) { | |||
_arg1 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg1 = null; | |||
} | |||
com.icbc.smartpos.deviceservice.aidl.PinInputListener _arg2; | |||
_arg2 = com.icbc.smartpos.deviceservice.aidl.PinInputListener.Stub.asInterface(data.readStrongBinder()); | |||
this.startPinInput(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_submitPinInput: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.submitPinInput(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_stopPinInput: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.stopPinInput(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_getLastError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _result = this.getLastError(); | |||
reply.writeNoException(); | |||
reply.writeString(_result); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IPinpad | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 判断密钥是否存在(密钥已下载)<br/> | |||
* @param keyType - 密钥类型 | |||
* <ul> | |||
* <li>0-主密钥</li> | |||
* <li>1-MAC密钥</li> | |||
* <li>2-PIN密钥</li> | |||
* <li>3-TD密钥</li> | |||
* </ul> | |||
* @param keyId - 密钥ID | |||
* @return 存在返回true,不存在返回false | |||
**/ | |||
@Override public boolean isKeyExist(int keyType, int keyId) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyType); | |||
_data.writeInt(keyId); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_isKeyExist, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().isKeyExist(keyType, keyId); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 下装TEK密钥<br/> | |||
* TEK是加密主密钥的密钥KEK | |||
* @param keyId - 密钥存储的ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadTEK(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyId); | |||
_data.writeByteArray(key); | |||
_data.writeByteArray(checkValue); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_loadTEK, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().loadTEK(keyId, key, checkValue); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 下装密文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadEncryptMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyId); | |||
_data.writeByteArray(key); | |||
_data.writeByteArray(checkValue); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_loadEncryptMainKey, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().loadEncryptMainKey(keyId, key, checkValue); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 下装明文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyId); | |||
_data.writeByteArray(key); | |||
_data.writeByteArray(checkValue); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_loadMainKey, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().loadMainKey(keyId, key, checkValue); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 下装工作密钥<br/> | |||
* @param keyType - 下装工作密钥类型,1-MAC密钥,2-PIN密钥,3-TD密钥 | |||
* @param mkId - 解密工作密钥的主密钥ID | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean loadWorkKey(int keyType, int mkId, int wkId, byte[] key, byte[] checkValue) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyType); | |||
_data.writeInt(mkId); | |||
_data.writeInt(wkId); | |||
_data.writeByteArray(key); | |||
_data.writeByteArray(checkValue); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_loadWorkKey, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().loadWorkKey(keyType, mkId, wkId, key, checkValue); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 计算MAC值<br/> | |||
* @param keyId - MAC密钥索引 | |||
* @param data - 计算MAC的数据 | |||
* @return 成功返回mac值,失败返回null | |||
*/ | |||
@Override public byte[] calcMAC(int keyId, byte[] data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyId); | |||
_data.writeByteArray(data); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_calcMAC, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().calcMAC(keyId, data); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 加密磁道数据<br/> | |||
* @param mode - 加密模式 | |||
* @param keyId - TDK密钥索引 | |||
* @param trkData - 待加密磁道数据 | |||
* @return 成功返回加密后的磁道数据,失败返回null | |||
*/ | |||
@Override public byte[] encryptTrackData(int mode, int keyId, byte[] trkData) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(mode); | |||
_data.writeInt(keyId); | |||
_data.writeByteArray(trkData); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_encryptTrackData, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().encryptTrackData(mode, keyId, trkData); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 启动PIN输入<br/> | |||
* @param keyId - PIN密钥索引 | |||
* @param param - PIN输入配置参数 | |||
* <ul> | |||
* <li>pinLimit(byte[]) - 允许输入密码的长度</li> | |||
* <li>timeout(int) - 输入超时时间,单位(秒)</li> | |||
* <li>isOnline(boolean) - 是否联机PIN</li> | |||
* <li>promptString(String) - 提示信息</li> | |||
* <li>pan(String) - 用于加密联机PIN的主帐号(卡号)</li> | |||
* </ul> | |||
* @param listener - PIN输入过程监听器 | |||
* @return | |||
*/ | |||
@Override public void startPinInput(int keyId, android.os.Bundle param, com.icbc.smartpos.deviceservice.aidl.PinInputListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(keyId); | |||
if ((param!=null)) { | |||
_data.writeInt(1); | |||
param.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startPinInput, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().startPinInput(keyId, param, listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 提交PIN输入 | |||
*/ | |||
@Override public void submitPinInput() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_submitPinInput, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().submitPinInput(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 取消PIN输入过程 | |||
*/ | |||
@Override public void stopPinInput() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_stopPinInput, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().stopPinInput(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 获取最近一次操作的错误<br/> | |||
* @return 错误描述 | |||
*/ | |||
@Override public java.lang.String getLastError() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
java.lang.String _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getLastError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getLastError(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readString(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IPinpad sDefaultImpl; | |||
} | |||
static final int TRANSACTION_isKeyExist = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_loadTEK = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_loadEncryptMainKey = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_loadMainKey = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_loadWorkKey = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_calcMAC = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_encryptTrackData = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
static final int TRANSACTION_startPinInput = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); | |||
static final int TRANSACTION_submitPinInput = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); | |||
static final int TRANSACTION_stopPinInput = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); | |||
static final int TRANSACTION_getLastError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IPinpad impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IPinpad getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 判断密钥是否存在(密钥已下载)<br/> | |||
* @param keyType - 密钥类型 | |||
* <ul> | |||
* <li>0-主密钥</li> | |||
* <li>1-MAC密钥</li> | |||
* <li>2-PIN密钥</li> | |||
* <li>3-TD密钥</li> | |||
* </ul> | |||
* @param keyId - 密钥ID | |||
* @return 存在返回true,不存在返回false | |||
**/ | |||
public boolean isKeyExist(int keyType, int keyId) throws android.os.RemoteException; | |||
/** | |||
* 下装TEK密钥<br/> | |||
* TEK是加密主密钥的密钥KEK | |||
* @param keyId - 密钥存储的ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean loadTEK(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException; | |||
/** | |||
* 下装密文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean loadEncryptMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException; | |||
/** | |||
* 下装明文主密钥<br/> | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean loadMainKey(int keyId, byte[] key, byte[] checkValue) throws android.os.RemoteException; | |||
/** | |||
* 下装工作密钥<br/> | |||
* @param keyType - 下装工作密钥类型,1-MAC密钥,2-PIN密钥,3-TD密钥 | |||
* @param mkId - 解密工作密钥的主密钥ID | |||
* @param keyId - 下装密钥存储ID | |||
* @param key - 密钥 | |||
* @param checkValue - 校验值 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean loadWorkKey(int keyType, int mkId, int wkId, byte[] key, byte[] checkValue) throws android.os.RemoteException; | |||
/** | |||
* 计算MAC值<br/> | |||
* @param keyId - MAC密钥索引 | |||
* @param data - 计算MAC的数据 | |||
* @return 成功返回mac值,失败返回null | |||
*/ | |||
public byte[] calcMAC(int keyId, byte[] data) throws android.os.RemoteException; | |||
/** | |||
* 加密磁道数据<br/> | |||
* @param mode - 加密模式 | |||
* @param keyId - TDK密钥索引 | |||
* @param trkData - 待加密磁道数据 | |||
* @return 成功返回加密后的磁道数据,失败返回null | |||
*/ | |||
public byte[] encryptTrackData(int mode, int keyId, byte[] trkData) throws android.os.RemoteException; | |||
/** | |||
* 启动PIN输入<br/> | |||
* @param keyId - PIN密钥索引 | |||
* @param param - PIN输入配置参数 | |||
* <ul> | |||
* <li>pinLimit(byte[]) - 允许输入密码的长度</li> | |||
* <li>timeout(int) - 输入超时时间,单位(秒)</li> | |||
* <li>isOnline(boolean) - 是否联机PIN</li> | |||
* <li>promptString(String) - 提示信息</li> | |||
* <li>pan(String) - 用于加密联机PIN的主帐号(卡号)</li> | |||
* </ul> | |||
* @param listener - PIN输入过程监听器 | |||
* @return | |||
*/ | |||
public void startPinInput(int keyId, android.os.Bundle param, com.icbc.smartpos.deviceservice.aidl.PinInputListener listener) throws android.os.RemoteException; | |||
/** | |||
* 提交PIN输入 | |||
*/ | |||
public void submitPinInput() throws android.os.RemoteException; | |||
/** | |||
* 取消PIN输入过程 | |||
*/ | |||
public void stopPinInput() throws android.os.RemoteException; | |||
/** | |||
* 获取最近一次操作的错误<br/> | |||
* @return 错误描述 | |||
*/ | |||
public java.lang.String getLastError() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,677 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 打印机对象<br/> | |||
* 实现对文本、条形码、二维码和图片的打印功能。 | |||
* @author: baoxl | |||
*/ | |||
public interface IPrinter extends android.os.IInterface | |||
{ | |||
/** Default implementation for IPrinter. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IPrinter | |||
{ | |||
/** | |||
* 获取打印机状态 | |||
* @return 打印机状态 | |||
* <ul> | |||
* <li>ERROR_NONE(0x00) - 状态正常</li> | |||
* <li>ERROR_PAPERENDED(0xF0) - 缺纸,不能打印</li> | |||
* <li>ERROR_HARDERR(0xF2) - 硬件错误</li> | |||
* <li>ERROR_OVERHEAT(0xF3) - 打印头过热</li> | |||
* <li>ERROR_BUFOVERFLOW(0xF5) - 缓冲模式下所操作的位置超出范围 </li> | |||
* <li>ERROR_LOWVOL(0xE1) - 低压保护 </li> | |||
* <li>ERROR_PAPERENDING(0xF4) - 纸张将要用尽,还允许打印(单步进针打特有返回值)</li> | |||
* <li>ERROR_MOTORERR(0xFB) - 打印机芯故障(过快或者过慢)</li> | |||
* <li>ERROR_PENOFOUND(0xFC) - 自动定位没有找到对齐位置,纸张回到原来位置 </li> | |||
* <li>ERROR_PAPERJAM(0xEE) - 卡纸</li> | |||
* <li>ERROR_NOBM(0xF6) - 没有找到黑标</li> | |||
* <li>ERROR_BUSY(0xF7) - 打印机处于忙状态</li> | |||
* <li>ERROR_BMBLACK(0xF8) - 黑标探测器检测到黑色信号</li> | |||
* <li>ERROR_WORKON(0xE6) - 打印机电源处于打开状态</li> | |||
* <li>ERROR_LIFTHEAD(0xE0) - 打印头抬起(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_CUTPOSITIONERR(0xE2) - 切纸刀不在原位(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_LOWTEMP(0xE3) - 低温保护或AD出错(自助热敏打印机特有返回值)</li> | |||
* </ul> | |||
*/ | |||
@Override public int getStatus() throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 设置打印灰度 | |||
* @param gray - 打印灰度0~10 | |||
*/ | |||
@Override public void setGray(int gray) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 添加一行打印文本 | |||
* @param format - 打印字体格式 | |||
* <ul> | |||
* <li>font(int) - 0:small, 1:normal, 2:large</li> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* </ul> | |||
* @param text - 打印文本 | |||
*/ | |||
@Override public void addText(android.os.Bundle format, java.lang.String text) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 添加条码打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param barcode - 条码内容 | |||
*/ | |||
@Override public void addBarCode(android.os.Bundle format, java.lang.String barcode) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 添加二维码打印 | |||
* @param format - 打印格式,可设置打印的位置、期望高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置 </li> | |||
* <li>expectedHeight(int) - 期望高度</li> | |||
* </ul> | |||
* @param qrCode - 二维码内容 | |||
*/ | |||
@Override public void addQrCode(android.os.Bundle format, java.lang.String qrCode) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 添加图片打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param imageData - 图片数据 | |||
*/ | |||
@Override public void addImage(android.os.Bundle format, byte[] imageData) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 走纸 | |||
* @param lines - 行数 | |||
*/ | |||
@Override public void feedLine(int lines) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 启动打印 | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
@Override public void startPrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 启动打印(打印不清缓存) | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
@Override public void startSaveCachePrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IPrinter | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IPrinter"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IPrinter interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IPrinter asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IPrinter))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IPrinter)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IPrinter.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_getStatus: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _result = this.getStatus(); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_setGray: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.setGray(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_addText: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.addText(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_addBarCode: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.addBarCode(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_addQrCode: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.addQrCode(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_addImage: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
this.addImage(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_feedLine: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.feedLine(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_startPrint: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.PrinterListener _arg0; | |||
_arg0 = com.icbc.smartpos.deviceservice.aidl.PrinterListener.Stub.asInterface(data.readStrongBinder()); | |||
this.startPrint(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_startSaveCachePrint: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.PrinterListener _arg0; | |||
_arg0 = com.icbc.smartpos.deviceservice.aidl.PrinterListener.Stub.asInterface(data.readStrongBinder()); | |||
this.startSaveCachePrint(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IPrinter | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 获取打印机状态 | |||
* @return 打印机状态 | |||
* <ul> | |||
* <li>ERROR_NONE(0x00) - 状态正常</li> | |||
* <li>ERROR_PAPERENDED(0xF0) - 缺纸,不能打印</li> | |||
* <li>ERROR_HARDERR(0xF2) - 硬件错误</li> | |||
* <li>ERROR_OVERHEAT(0xF3) - 打印头过热</li> | |||
* <li>ERROR_BUFOVERFLOW(0xF5) - 缓冲模式下所操作的位置超出范围 </li> | |||
* <li>ERROR_LOWVOL(0xE1) - 低压保护 </li> | |||
* <li>ERROR_PAPERENDING(0xF4) - 纸张将要用尽,还允许打印(单步进针打特有返回值)</li> | |||
* <li>ERROR_MOTORERR(0xFB) - 打印机芯故障(过快或者过慢)</li> | |||
* <li>ERROR_PENOFOUND(0xFC) - 自动定位没有找到对齐位置,纸张回到原来位置 </li> | |||
* <li>ERROR_PAPERJAM(0xEE) - 卡纸</li> | |||
* <li>ERROR_NOBM(0xF6) - 没有找到黑标</li> | |||
* <li>ERROR_BUSY(0xF7) - 打印机处于忙状态</li> | |||
* <li>ERROR_BMBLACK(0xF8) - 黑标探测器检测到黑色信号</li> | |||
* <li>ERROR_WORKON(0xE6) - 打印机电源处于打开状态</li> | |||
* <li>ERROR_LIFTHEAD(0xE0) - 打印头抬起(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_CUTPOSITIONERR(0xE2) - 切纸刀不在原位(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_LOWTEMP(0xE3) - 低温保护或AD出错(自助热敏打印机特有返回值)</li> | |||
* </ul> | |||
*/ | |||
@Override public int getStatus() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_getStatus, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().getStatus(); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 设置打印灰度 | |||
* @param gray - 打印灰度0~10 | |||
*/ | |||
@Override public void setGray(int gray) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(gray); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_setGray, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().setGray(gray); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 添加一行打印文本 | |||
* @param format - 打印字体格式 | |||
* <ul> | |||
* <li>font(int) - 0:small, 1:normal, 2:large</li> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* </ul> | |||
* @param text - 打印文本 | |||
*/ | |||
@Override public void addText(android.os.Bundle format, java.lang.String text) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((format!=null)) { | |||
_data.writeInt(1); | |||
format.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeString(text); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_addText, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().addText(format, text); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 添加条码打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param barcode - 条码内容 | |||
*/ | |||
@Override public void addBarCode(android.os.Bundle format, java.lang.String barcode) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((format!=null)) { | |||
_data.writeInt(1); | |||
format.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeString(barcode); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_addBarCode, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().addBarCode(format, barcode); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 添加二维码打印 | |||
* @param format - 打印格式,可设置打印的位置、期望高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置 </li> | |||
* <li>expectedHeight(int) - 期望高度</li> | |||
* </ul> | |||
* @param qrCode - 二维码内容 | |||
*/ | |||
@Override public void addQrCode(android.os.Bundle format, java.lang.String qrCode) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((format!=null)) { | |||
_data.writeInt(1); | |||
format.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeString(qrCode); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_addQrCode, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().addQrCode(format, qrCode); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 添加图片打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param imageData - 图片数据 | |||
*/ | |||
@Override public void addImage(android.os.Bundle format, byte[] imageData) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((format!=null)) { | |||
_data.writeInt(1); | |||
format.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeByteArray(imageData); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_addImage, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().addImage(format, imageData); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 走纸 | |||
* @param lines - 行数 | |||
*/ | |||
@Override public void feedLine(int lines) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(lines); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_feedLine, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().feedLine(lines); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 启动打印 | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
@Override public void startPrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startPrint, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().startPrint(listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 启动打印(打印不清缓存) | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
@Override public void startSaveCachePrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startSaveCachePrint, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().startSaveCachePrint(listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IPrinter sDefaultImpl; | |||
} | |||
static final int TRANSACTION_getStatus = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_setGray = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_addText = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_addBarCode = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_addQrCode = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_addImage = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_feedLine = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
static final int TRANSACTION_startPrint = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); | |||
static final int TRANSACTION_startSaveCachePrint = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IPrinter impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IPrinter getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 获取打印机状态 | |||
* @return 打印机状态 | |||
* <ul> | |||
* <li>ERROR_NONE(0x00) - 状态正常</li> | |||
* <li>ERROR_PAPERENDED(0xF0) - 缺纸,不能打印</li> | |||
* <li>ERROR_HARDERR(0xF2) - 硬件错误</li> | |||
* <li>ERROR_OVERHEAT(0xF3) - 打印头过热</li> | |||
* <li>ERROR_BUFOVERFLOW(0xF5) - 缓冲模式下所操作的位置超出范围 </li> | |||
* <li>ERROR_LOWVOL(0xE1) - 低压保护 </li> | |||
* <li>ERROR_PAPERENDING(0xF4) - 纸张将要用尽,还允许打印(单步进针打特有返回值)</li> | |||
* <li>ERROR_MOTORERR(0xFB) - 打印机芯故障(过快或者过慢)</li> | |||
* <li>ERROR_PENOFOUND(0xFC) - 自动定位没有找到对齐位置,纸张回到原来位置 </li> | |||
* <li>ERROR_PAPERJAM(0xEE) - 卡纸</li> | |||
* <li>ERROR_NOBM(0xF6) - 没有找到黑标</li> | |||
* <li>ERROR_BUSY(0xF7) - 打印机处于忙状态</li> | |||
* <li>ERROR_BMBLACK(0xF8) - 黑标探测器检测到黑色信号</li> | |||
* <li>ERROR_WORKON(0xE6) - 打印机电源处于打开状态</li> | |||
* <li>ERROR_LIFTHEAD(0xE0) - 打印头抬起(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_CUTPOSITIONERR(0xE2) - 切纸刀不在原位(自助热敏打印机特有返回值)</li> | |||
* <li>ERROR_LOWTEMP(0xE3) - 低温保护或AD出错(自助热敏打印机特有返回值)</li> | |||
* </ul> | |||
*/ | |||
public int getStatus() throws android.os.RemoteException; | |||
/** | |||
* 设置打印灰度 | |||
* @param gray - 打印灰度0~10 | |||
*/ | |||
public void setGray(int gray) throws android.os.RemoteException; | |||
/** | |||
* 添加一行打印文本 | |||
* @param format - 打印字体格式 | |||
* <ul> | |||
* <li>font(int) - 0:small, 1:normal, 2:large</li> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* </ul> | |||
* @param text - 打印文本 | |||
*/ | |||
public void addText(android.os.Bundle format, java.lang.String text) throws android.os.RemoteException; | |||
/** | |||
* 添加条码打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>align(int) - 0:left, 1:center, 2:right</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param barcode - 条码内容 | |||
*/ | |||
public void addBarCode(android.os.Bundle format, java.lang.String barcode) throws android.os.RemoteException; | |||
/** | |||
* 添加二维码打印 | |||
* @param format - 打印格式,可设置打印的位置、期望高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置 </li> | |||
* <li>expectedHeight(int) - 期望高度</li> | |||
* </ul> | |||
* @param qrCode - 二维码内容 | |||
*/ | |||
public void addQrCode(android.os.Bundle format, java.lang.String qrCode) throws android.os.RemoteException; | |||
/** | |||
* 添加图片打印 | |||
* @param format - 打印格式,可设置打印的位置、宽度、高度 | |||
* <ul> | |||
* <li>offset(int) - 打印起始位置</li> | |||
* <li>width(int) - 宽度</li> | |||
* <li>height(int) - 高度</li> | |||
* </ul> | |||
* @param imageData - 图片数据 | |||
*/ | |||
public void addImage(android.os.Bundle format, byte[] imageData) throws android.os.RemoteException; | |||
/** | |||
* 走纸 | |||
* @param lines - 行数 | |||
*/ | |||
public void feedLine(int lines) throws android.os.RemoteException; | |||
/** | |||
* 启动打印 | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
public void startPrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException; | |||
/** | |||
* 启动打印(打印不清缓存) | |||
* @param listener - 打印结果监听器 | |||
*/ | |||
public void startSaveCachePrint(com.icbc.smartpos.deviceservice.aidl.PrinterListener listener) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,880 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 非接触式IC读卡器对象 | |||
* @author: baoxl | |||
*/ | |||
public interface IRFCardReader extends android.os.IInterface | |||
{ | |||
/** Default implementation for IRFCardReader. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IRFCardReader | |||
{ | |||
/** | |||
* 非接寻卡上电<br/> | |||
* @param listener - 寻卡监听器 | |||
*/ | |||
@Override public void searchCard(com.icbc.smartpos.deviceservice.aidl.RFSearchListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 停止寻卡操作 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
@Override public void stopSearch() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 激活卡片<br/> | |||
* @param driver - 驱动名称 | |||
* <ul> | |||
* <li>"S50" - S50卡</li> | |||
* <li>"S70" - S70卡</li> | |||
* <li>"CPU" - CPU卡</li> | |||
* <li>"PRO" - PRO、S5O_PRO、S70_PRO卡</li> | |||
* </ul> | |||
* @param responseData - 激活卡片应答数据 | |||
* @return 返回0表示激活成功,其他失败。 | |||
*/ | |||
@Override public int activate(java.lang.String driver, byte[] responseData) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 关闭设备,再次操作需从寻卡开始<br/> | |||
*/ | |||
@Override public void halt() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
@Override public boolean isExist() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据。 | |||
*/ | |||
@Override public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
@Override public byte[] cardReset(int resetType) throws android.os.RemoteException | |||
{ | |||
return null; | |||
} | |||
/** | |||
* 认证(根据块号) | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口需要指定认证块的具体位置</li> | |||
* </ul> | |||
* @param blockNo 块号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int authBlock(int blockNo, int keyType, byte[] key) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 认证(根扇区号)<br/> | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口只需要指定要操作的扇区,会自动对该扇区的第3块(从0起)进行认证操作</li> | |||
* </ul> | |||
* @param sectorNo 扇区号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int authSector(int sectorNo, int keyType, byte[] key) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 读块数据 | |||
* @param blockNo - 块号 | |||
* @param data - 读取返回的块数据(16字节数据) | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int readBlock(int blockNo, byte[] data) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 写块数据<br/> | |||
* <ul> | |||
* <li>必须是16个字节的数据,没有达到字节数将认为是错误。</li> | |||
* </ul> | |||
* @param blockNo - 块号 | |||
* @param data - 指定数据写到指定的块里 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int writeBlock(int blockNo, byte[] data) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 加值</br> | |||
* 把指定的值加至一数值块中<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int increaseValue(int blockNo, int value) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 减值</br> | |||
* 从一数值块中减去指定的值<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int decreaseValue(int blockNo, int value) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IRFCardReader | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IRFCardReader"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IRFCardReader interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IRFCardReader asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IRFCardReader))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IRFCardReader)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IRFCardReader.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_searchCard: | |||
{ | |||
data.enforceInterface(descriptor); | |||
com.icbc.smartpos.deviceservice.aidl.RFSearchListener _arg0; | |||
_arg0 = com.icbc.smartpos.deviceservice.aidl.RFSearchListener.Stub.asInterface(data.readStrongBinder()); | |||
this.searchCard(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_stopSearch: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.stopSearch(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_activate: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _arg0; | |||
_arg0 = data.readString(); | |||
byte[] _arg1; | |||
int _arg1_length = data.readInt(); | |||
if ((_arg1_length<0)) { | |||
_arg1 = null; | |||
} | |||
else { | |||
_arg1 = new byte[_arg1_length]; | |||
} | |||
int _result = this.activate(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
reply.writeByteArray(_arg1); | |||
return true; | |||
} | |||
case TRANSACTION_halt: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.halt(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_isExist: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.isExist(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_exchangeApdu: | |||
{ | |||
data.enforceInterface(descriptor); | |||
byte[] _arg0; | |||
_arg0 = data.createByteArray(); | |||
byte[] _result = this.exchangeApdu(_arg0); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
case TRANSACTION_cardReset: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _result = this.cardReset(_arg0); | |||
reply.writeNoException(); | |||
reply.writeByteArray(_result); | |||
return true; | |||
} | |||
case TRANSACTION_authBlock: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
int _result = this.authBlock(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_authSector: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
byte[] _arg2; | |||
_arg2 = data.createByteArray(); | |||
int _result = this.authSector(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_readBlock: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
int _arg1_length = data.readInt(); | |||
if ((_arg1_length<0)) { | |||
_arg1 = null; | |||
} | |||
else { | |||
_arg1 = new byte[_arg1_length]; | |||
} | |||
int _result = this.readBlock(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
reply.writeByteArray(_arg1); | |||
return true; | |||
} | |||
case TRANSACTION_writeBlock: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
byte[] _arg1; | |||
_arg1 = data.createByteArray(); | |||
int _result = this.writeBlock(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_increaseValue: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _result = this.increaseValue(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_decreaseValue: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _result = this.decreaseValue(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IRFCardReader | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 非接寻卡上电<br/> | |||
* @param listener - 寻卡监听器 | |||
*/ | |||
@Override public void searchCard(com.icbc.smartpos.deviceservice.aidl.RFSearchListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_searchCard, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().searchCard(listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 停止寻卡操作 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
@Override public void stopSearch() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_stopSearch, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().stopSearch(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 激活卡片<br/> | |||
* @param driver - 驱动名称 | |||
* <ul> | |||
* <li>"S50" - S50卡</li> | |||
* <li>"S70" - S70卡</li> | |||
* <li>"CPU" - CPU卡</li> | |||
* <li>"PRO" - PRO、S5O_PRO、S70_PRO卡</li> | |||
* </ul> | |||
* @param responseData - 激活卡片应答数据 | |||
* @return 返回0表示激活成功,其他失败。 | |||
*/ | |||
@Override public int activate(java.lang.String driver, byte[] responseData) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeString(driver); | |||
if ((responseData==null)) { | |||
_data.writeInt(-1); | |||
} | |||
else { | |||
_data.writeInt(responseData.length); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_activate, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().activate(driver, responseData); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
_reply.readByteArray(responseData); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 关闭设备,再次操作需从寻卡开始<br/> | |||
*/ | |||
@Override public void halt() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_halt, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().halt(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
@Override public boolean isExist() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_isExist, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().isExist(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据。 | |||
*/ | |||
@Override public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeByteArray(apdu); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_exchangeApdu, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().exchangeApdu(apdu); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
@Override public byte[] cardReset(int resetType) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
byte[] _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(resetType); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_cardReset, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().cardReset(resetType); | |||
} | |||
_reply.readException(); | |||
_result = _reply.createByteArray(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 认证(根据块号) | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口需要指定认证块的具体位置</li> | |||
* </ul> | |||
* @param blockNo 块号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int authBlock(int blockNo, int keyType, byte[] key) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(blockNo); | |||
_data.writeInt(keyType); | |||
_data.writeByteArray(key); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_authBlock, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().authBlock(blockNo, keyType, key); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 认证(根扇区号)<br/> | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口只需要指定要操作的扇区,会自动对该扇区的第3块(从0起)进行认证操作</li> | |||
* </ul> | |||
* @param sectorNo 扇区号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int authSector(int sectorNo, int keyType, byte[] key) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(sectorNo); | |||
_data.writeInt(keyType); | |||
_data.writeByteArray(key); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_authSector, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().authSector(sectorNo, keyType, key); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 读块数据 | |||
* @param blockNo - 块号 | |||
* @param data - 读取返回的块数据(16字节数据) | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int readBlock(int blockNo, byte[] data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(blockNo); | |||
if ((data==null)) { | |||
_data.writeInt(-1); | |||
} | |||
else { | |||
_data.writeInt(data.length); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_readBlock, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().readBlock(blockNo, data); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
_reply.readByteArray(data); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 写块数据<br/> | |||
* <ul> | |||
* <li>必须是16个字节的数据,没有达到字节数将认为是错误。</li> | |||
* </ul> | |||
* @param blockNo - 块号 | |||
* @param data - 指定数据写到指定的块里 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int writeBlock(int blockNo, byte[] data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(blockNo); | |||
_data.writeByteArray(data); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_writeBlock, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().writeBlock(blockNo, data); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 加值</br> | |||
* 把指定的值加至一数值块中<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int increaseValue(int blockNo, int value) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(blockNo); | |||
_data.writeInt(value); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_increaseValue, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().increaseValue(blockNo, value); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 减值</br> | |||
* 从一数值块中减去指定的值<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
@Override public int decreaseValue(int blockNo, int value) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(blockNo); | |||
_data.writeInt(value); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_decreaseValue, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().decreaseValue(blockNo, value); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IRFCardReader sDefaultImpl; | |||
} | |||
static final int TRANSACTION_searchCard = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_stopSearch = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_activate = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_halt = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_isExist = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_exchangeApdu = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_cardReset = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
static final int TRANSACTION_authBlock = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); | |||
static final int TRANSACTION_authSector = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); | |||
static final int TRANSACTION_readBlock = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); | |||
static final int TRANSACTION_writeBlock = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); | |||
static final int TRANSACTION_increaseValue = (android.os.IBinder.FIRST_CALL_TRANSACTION + 11); | |||
static final int TRANSACTION_decreaseValue = (android.os.IBinder.FIRST_CALL_TRANSACTION + 12); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IRFCardReader impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IRFCardReader getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 非接寻卡上电<br/> | |||
* @param listener - 寻卡监听器 | |||
*/ | |||
public void searchCard(com.icbc.smartpos.deviceservice.aidl.RFSearchListener listener) throws android.os.RemoteException; | |||
/** | |||
* 停止寻卡操作 | |||
* @return 关闭成功true,失败false。 | |||
*/ | |||
public void stopSearch() throws android.os.RemoteException; | |||
/** | |||
* 激活卡片<br/> | |||
* @param driver - 驱动名称 | |||
* <ul> | |||
* <li>"S50" - S50卡</li> | |||
* <li>"S70" - S70卡</li> | |||
* <li>"CPU" - CPU卡</li> | |||
* <li>"PRO" - PRO、S5O_PRO、S70_PRO卡</li> | |||
* </ul> | |||
* @param responseData - 激活卡片应答数据 | |||
* @return 返回0表示激活成功,其他失败。 | |||
*/ | |||
public int activate(java.lang.String driver, byte[] responseData) throws android.os.RemoteException; | |||
/** | |||
* 关闭设备,再次操作需从寻卡开始<br/> | |||
*/ | |||
public void halt() throws android.os.RemoteException; | |||
/** | |||
* 卡片是否在位 | |||
* @return 卡在位true,卡不在位false。 | |||
*/ | |||
public boolean isExist() throws android.os.RemoteException; | |||
/** | |||
* APDU数据通讯 | |||
* @param apdu - apdu数据 | |||
* @return 成功返回卡片应答数据。 | |||
*/ | |||
public byte[] exchangeApdu(byte[] apdu) throws android.os.RemoteException; | |||
/** | |||
* 卡片复位 | |||
* @param resetType - 复位类型 | |||
* <ul> | |||
* <li>0- WARMRESET</li> | |||
* <li>1- COLDRESET</li> | |||
* </ul> | |||
* @return 卡片复位应答数据。 | |||
*/ | |||
public byte[] cardReset(int resetType) throws android.os.RemoteException; | |||
/** | |||
* 认证(根据块号) | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口需要指定认证块的具体位置</li> | |||
* </ul> | |||
* @param blockNo 块号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int authBlock(int blockNo, int keyType, byte[] key) throws android.os.RemoteException; | |||
/** | |||
* 认证(根扇区号)<br/> | |||
* <ul> | |||
* <li>对卡执行读写,修改的操作时必须先进行认证,而且同时只能认证一个扇区,在对不同的扇区进行操作时需要再做认证。</li><br/> | |||
* <li>该接口只需要指定要操作的扇区,会自动对该扇区的第3块(从0起)进行认证操作</li> | |||
* </ul> | |||
* @param sectorNo 扇区号,从0开始 | |||
* @param keyType 密钥类型 KEY_A 或者 KEY_B | |||
* @param key 密钥,6字节长 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int authSector(int sectorNo, int keyType, byte[] key) throws android.os.RemoteException; | |||
/** | |||
* 读块数据 | |||
* @param blockNo - 块号 | |||
* @param data - 读取返回的块数据(16字节数据) | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int readBlock(int blockNo, byte[] data) throws android.os.RemoteException; | |||
/** | |||
* 写块数据<br/> | |||
* <ul> | |||
* <li>必须是16个字节的数据,没有达到字节数将认为是错误。</li> | |||
* </ul> | |||
* @param blockNo - 块号 | |||
* @param data - 指定数据写到指定的块里 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int writeBlock(int blockNo, byte[] data) throws android.os.RemoteException; | |||
/** | |||
* 加值</br> | |||
* 把指定的值加至一数值块中<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int increaseValue(int blockNo, int value) throws android.os.RemoteException; | |||
/** | |||
* 减值</br> | |||
* 从一数值块中减去指定的值<br/> | |||
* @param blockNo - 块号 | |||
* @param value - 数据 | |||
* @return 成功0x00,其他失败 | |||
*/ | |||
public int decreaseValue(int blockNo, int value) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,205 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 扫码器对象<br/> | |||
* 实现设备对二维码扫码功能。 | |||
* @author: baoxl | |||
*/ | |||
public interface IScanner extends android.os.IInterface | |||
{ | |||
/** Default implementation for IScanner. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.IScanner | |||
{ | |||
/** | |||
* 启动扫码 | |||
* @param配置参数 | |||
* upPromptString(String):扫描框上方提示信息,最大20汉字,默认中间对齐, | |||
* downPromptString(String):扫描框下方提示信息,最大20汉字,默认中间对齐 | |||
* timeout - 超时时间,单位ms | |||
* listener - 扫码结果监听 | |||
*/ | |||
@Override public void startScan(android.os.Bundle param, long timeout, com.icbc.smartpos.deviceservice.aidl.ScannerListener listener) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 停止扫码 | |||
*/ | |||
@Override public void stopScan() throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.IScanner | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.IScanner"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.IScanner interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.IScanner asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.IScanner))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.IScanner)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.IScanner.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_startScan: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
long _arg1; | |||
_arg1 = data.readLong(); | |||
com.icbc.smartpos.deviceservice.aidl.ScannerListener _arg2; | |||
_arg2 = com.icbc.smartpos.deviceservice.aidl.ScannerListener.Stub.asInterface(data.readStrongBinder()); | |||
this.startScan(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_stopScan: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.stopScan(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.IScanner | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 启动扫码 | |||
* @param配置参数 | |||
* upPromptString(String):扫描框上方提示信息,最大20汉字,默认中间对齐, | |||
* downPromptString(String):扫描框下方提示信息,最大20汉字,默认中间对齐 | |||
* timeout - 超时时间,单位ms | |||
* listener - 扫码结果监听 | |||
*/ | |||
@Override public void startScan(android.os.Bundle param, long timeout, com.icbc.smartpos.deviceservice.aidl.ScannerListener listener) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((param!=null)) { | |||
_data.writeInt(1); | |||
param.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeLong(timeout); | |||
_data.writeStrongBinder((((listener!=null))?(listener.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startScan, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().startScan(param, timeout, listener); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 停止扫码 | |||
*/ | |||
@Override public void stopScan() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_stopScan, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().stopScan(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IScanner sDefaultImpl; | |||
} | |||
static final int TRANSACTION_startScan = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_stopScan = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.IScanner impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.IScanner getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 启动扫码 | |||
* @param配置参数 | |||
* upPromptString(String):扫描框上方提示信息,最大20汉字,默认中间对齐, | |||
* downPromptString(String):扫描框下方提示信息,最大20汉字,默认中间对齐 | |||
* timeout - 超时时间,单位ms | |||
* listener - 扫码结果监听 | |||
*/ | |||
public void startScan(android.os.Bundle param, long timeout, com.icbc.smartpos.deviceservice.aidl.ScannerListener listener) throws android.os.RemoteException; | |||
/** | |||
* 停止扫码 | |||
*/ | |||
public void stopScan() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,515 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 串口设备对象<br/> | |||
* 实现串口数据收发功能。 | |||
* @author: baoxl | |||
*/ | |||
public interface ISerialPort extends android.os.IInterface | |||
{ | |||
/** Default implementation for ISerialPort. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.ISerialPort | |||
{ | |||
/** | |||
* 打开串口 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean open() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 关闭串口 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean close() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 初始化串口 | |||
* @param bps 波特率 | |||
* <ul> | |||
* <li>1200 - 对应1200波特率</li> | |||
* <li>2400 - 对应2400波特率</li> | |||
* <li>4800 - 对应4800波特率</li> | |||
* <li>9600 - 对应9600波特率</li> | |||
* <li>14400 - 对应14400波特率</li> | |||
* <li>19200 - 对应19200波特率</li> | |||
* <li>28800 - 对应28800波特率</li> | |||
* <li>38400 - 对应38400波特率</li> | |||
* <li>57600 - 对应57600波特率</li> | |||
* <li>115200 - 对应115200波特率</li> | |||
* </ul> | |||
* @param par 效验 | |||
* <ul> | |||
* <li>0 - 不校验</li> | |||
* <li>1 - 奇校验</li> | |||
* <li>2 - 偶校验</li> | |||
* </ul> | |||
* @param dbs 数据位 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean init(int bps, int par, int dbs) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 读数据(接收) | |||
* @param buffer 缓冲区 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际读取的数据长度,失败返回-1 | |||
*/ | |||
@Override public int read(byte[] buffer, int timeout) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 写数据(发送) | |||
* @param data 要发送的数据 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际写入的数据长度,失败返回-1 | |||
*/ | |||
@Override public int write(byte[] data, int timeout) throws android.os.RemoteException | |||
{ | |||
return 0; | |||
} | |||
/** | |||
* 清除接收缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean clearInputBuffer() throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
/** | |||
* 查看缓冲区是否为空 | |||
* @param input true为输入缓冲区,false为输出缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean isBufferEmpty(boolean input) throws android.os.RemoteException | |||
{ | |||
return false; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.ISerialPort | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.ISerialPort"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.ISerialPort interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.ISerialPort asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.ISerialPort))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.ISerialPort)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.ISerialPort.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_open: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.open(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_close: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.close(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_init: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _arg2; | |||
_arg2 = data.readInt(); | |||
boolean _result = this.init(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_read: | |||
{ | |||
data.enforceInterface(descriptor); | |||
byte[] _arg0; | |||
_arg0 = data.createByteArray(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _result = this.read(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
reply.writeByteArray(_arg0); | |||
return true; | |||
} | |||
case TRANSACTION_write: | |||
{ | |||
data.enforceInterface(descriptor); | |||
byte[] _arg0; | |||
_arg0 = data.createByteArray(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
int _result = this.write(_arg0, _arg1); | |||
reply.writeNoException(); | |||
reply.writeInt(_result); | |||
return true; | |||
} | |||
case TRANSACTION_clearInputBuffer: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _result = this.clearInputBuffer(); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
case TRANSACTION_isBufferEmpty: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _arg0; | |||
_arg0 = (0!=data.readInt()); | |||
boolean _result = this.isBufferEmpty(_arg0); | |||
reply.writeNoException(); | |||
reply.writeInt(((_result)?(1):(0))); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.ISerialPort | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 打开串口 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean open() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_open, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().open(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 关闭串口 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean close() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_close, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().close(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 初始化串口 | |||
* @param bps 波特率 | |||
* <ul> | |||
* <li>1200 - 对应1200波特率</li> | |||
* <li>2400 - 对应2400波特率</li> | |||
* <li>4800 - 对应4800波特率</li> | |||
* <li>9600 - 对应9600波特率</li> | |||
* <li>14400 - 对应14400波特率</li> | |||
* <li>19200 - 对应19200波特率</li> | |||
* <li>28800 - 对应28800波特率</li> | |||
* <li>38400 - 对应38400波特率</li> | |||
* <li>57600 - 对应57600波特率</li> | |||
* <li>115200 - 对应115200波特率</li> | |||
* </ul> | |||
* @param par 效验 | |||
* <ul> | |||
* <li>0 - 不校验</li> | |||
* <li>1 - 奇校验</li> | |||
* <li>2 - 偶校验</li> | |||
* </ul> | |||
* @param dbs 数据位 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean init(int bps, int par, int dbs) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(bps); | |||
_data.writeInt(par); | |||
_data.writeInt(dbs); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_init, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().init(bps, par, dbs); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 读数据(接收) | |||
* @param buffer 缓冲区 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际读取的数据长度,失败返回-1 | |||
*/ | |||
@Override public int read(byte[] buffer, int timeout) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeByteArray(buffer); | |||
_data.writeInt(timeout); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_read, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().read(buffer, timeout); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
_reply.readByteArray(buffer); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 写数据(发送) | |||
* @param data 要发送的数据 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际写入的数据长度,失败返回-1 | |||
*/ | |||
@Override public int write(byte[] data, int timeout) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
int _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeByteArray(data); | |||
_data.writeInt(timeout); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_write, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().write(data, timeout); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readInt(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 清除接收缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean clearInputBuffer() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_clearInputBuffer, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().clearInputBuffer(); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
/** | |||
* 查看缓冲区是否为空 | |||
* @param input true为输入缓冲区,false为输出缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
@Override public boolean isBufferEmpty(boolean input) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
boolean _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(((input)?(1):(0))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_isBufferEmpty, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().isBufferEmpty(input); | |||
} | |||
_reply.readException(); | |||
_result = (0!=_reply.readInt()); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ISerialPort sDefaultImpl; | |||
} | |||
static final int TRANSACTION_open = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_close = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_init = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_read = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_write = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_clearInputBuffer = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_isBufferEmpty = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.ISerialPort impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ISerialPort getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 打开串口 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean open() throws android.os.RemoteException; | |||
/** | |||
* 关闭串口 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean close() throws android.os.RemoteException; | |||
/** | |||
* 初始化串口 | |||
* @param bps 波特率 | |||
* <ul> | |||
* <li>1200 - 对应1200波特率</li> | |||
* <li>2400 - 对应2400波特率</li> | |||
* <li>4800 - 对应4800波特率</li> | |||
* <li>9600 - 对应9600波特率</li> | |||
* <li>14400 - 对应14400波特率</li> | |||
* <li>19200 - 对应19200波特率</li> | |||
* <li>28800 - 对应28800波特率</li> | |||
* <li>38400 - 对应38400波特率</li> | |||
* <li>57600 - 对应57600波特率</li> | |||
* <li>115200 - 对应115200波特率</li> | |||
* </ul> | |||
* @param par 效验 | |||
* <ul> | |||
* <li>0 - 不校验</li> | |||
* <li>1 - 奇校验</li> | |||
* <li>2 - 偶校验</li> | |||
* </ul> | |||
* @param dbs 数据位 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean init(int bps, int par, int dbs) throws android.os.RemoteException; | |||
/** | |||
* 读数据(接收) | |||
* @param buffer 缓冲区 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际读取的数据长度,失败返回-1 | |||
*/ | |||
public int read(byte[] buffer, int timeout) throws android.os.RemoteException; | |||
/** | |||
* 写数据(发送) | |||
* @param data 要发送的数据 | |||
* @param timeout 超时时间,毫秒 | |||
* @return 返回实际写入的数据长度,失败返回-1 | |||
*/ | |||
public int write(byte[] data, int timeout) throws android.os.RemoteException; | |||
/** | |||
* 清除接收缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean clearInputBuffer() throws android.os.RemoteException; | |||
/** | |||
* 查看缓冲区是否为空 | |||
* @param input true为输入缓冲区,false为输出缓冲区 | |||
* @return 成功true,失败false | |||
*/ | |||
public boolean isBufferEmpty(boolean input) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,276 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 磁条卡刷卡结果回调 | |||
* @author: baoxl | |||
*/ | |||
public interface MagCardListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for MagCardListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.MagCardListener | |||
{ | |||
/** | |||
* 刷卡成功回调 | |||
* @param track - 磁卡数据对象 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onSuccess(android.os.Bundle track) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 刷卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 刷卡超时回调 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.MagCardListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.MagCardListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.MagCardListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.MagCardListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.MagCardListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.MagCardListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.MagCardListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onSuccess: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
this.onSuccess(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onError(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onTimeout: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onTimeout(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.MagCardListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 刷卡成功回调 | |||
* @param track - 磁卡数据对象 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onSuccess(android.os.Bundle track) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((track!=null)) { | |||
_data.writeInt(1); | |||
track.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onSuccess, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onSuccess(track); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 刷卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
_data.writeString(message); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(error, message); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 刷卡超时回调 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onTimeout, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onTimeout(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.MagCardListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onSuccess = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_onTimeout = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.MagCardListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.MagCardListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 刷卡成功回调 | |||
* @param track - 磁卡数据对象 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK1(String) - 磁道1数据</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
public void onSuccess(android.os.Bundle track) throws android.os.RemoteException; | |||
/** | |||
* 刷卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>SERVICE_CRASH(99) - 服务崩溃 </li> | |||
* <li>REQUEST_EXCEPTION(100) - 请求异常</li> | |||
* <li>MAG_SWIPE_ERROR(1) - 刷卡失败</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
public void onError(int error, java.lang.String message) throws android.os.RemoteException; | |||
/** | |||
* 刷卡超时回调 | |||
*/ | |||
public void onTimeout() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,201 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* PBOC流程联机应答数据处理 | |||
* @author: baoxl | |||
*/ | |||
public interface OnlineResultHandler extends android.os.IInterface | |||
{ | |||
/** Default implementation for OnlineResultHandler. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler | |||
{ | |||
/** | |||
* 联机应答数据处理回调<br/> | |||
* @param result - 处理结果 | |||
* <ul> | |||
* <li>ONLINE_RESULT_TC(0) - 联机成功 </li> | |||
* <li>ONLINE_RESULT_AAC(1) - 联机拒绝 </li> | |||
* <li>ONLINE_RESULT_OFFLINE_TC(101) - 联机失败,脱机成功 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_NOT_EXECUTE(102) - 脚本未执行 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_EXECUTE_FAIL(103) - 脚本执行失败 </li> | |||
* <li>ONLINE_RESULT_NO_SCRIPT(104) - 联机失败,未下送脚本 </li> | |||
* <li>ONLINE_RESULT_TOO_MANY_SCRIPT(105) - 联机失败,脚本超过1个 </li> | |||
* <li>ONLINE_RESULT_TERMINATE(106) - 联机失败,交易终止(GAC返回非9000,要提示交易终止,0x8F) </li> | |||
* <li>ONLINE_RESULT_ERROR(107) - 联机失败,EMV内核错误</li> | |||
* </ul> | |||
* @param data - 结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - 交易结果TLV数据 </li> | |||
* <li>SCRIPT_DATA(String) - 脚本结果TLV数据 </li> | |||
* <li>REVERSAL_DATA(String) - 冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onProccessResult(int result, android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onProccessResult: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
android.os.Bundle _arg1; | |||
if ((0!=data.readInt())) { | |||
_arg1 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg1 = null; | |||
} | |||
this.onProccessResult(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 联机应答数据处理回调<br/> | |||
* @param result - 处理结果 | |||
* <ul> | |||
* <li>ONLINE_RESULT_TC(0) - 联机成功 </li> | |||
* <li>ONLINE_RESULT_AAC(1) - 联机拒绝 </li> | |||
* <li>ONLINE_RESULT_OFFLINE_TC(101) - 联机失败,脱机成功 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_NOT_EXECUTE(102) - 脚本未执行 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_EXECUTE_FAIL(103) - 脚本执行失败 </li> | |||
* <li>ONLINE_RESULT_NO_SCRIPT(104) - 联机失败,未下送脚本 </li> | |||
* <li>ONLINE_RESULT_TOO_MANY_SCRIPT(105) - 联机失败,脚本超过1个 </li> | |||
* <li>ONLINE_RESULT_TERMINATE(106) - 联机失败,交易终止(GAC返回非9000,要提示交易终止,0x8F) </li> | |||
* <li>ONLINE_RESULT_ERROR(107) - 联机失败,EMV内核错误</li> | |||
* </ul> | |||
* @param data - 结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - 交易结果TLV数据 </li> | |||
* <li>SCRIPT_DATA(String) - 脚本结果TLV数据 </li> | |||
* <li>REVERSAL_DATA(String) - 冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onProccessResult(int result, android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(result); | |||
if ((data!=null)) { | |||
_data.writeInt(1); | |||
data.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onProccessResult, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onProccessResult(result, data); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onProccessResult = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.OnlineResultHandler getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 联机应答数据处理回调<br/> | |||
* @param result - 处理结果 | |||
* <ul> | |||
* <li>ONLINE_RESULT_TC(0) - 联机成功 </li> | |||
* <li>ONLINE_RESULT_AAC(1) - 联机拒绝 </li> | |||
* <li>ONLINE_RESULT_OFFLINE_TC(101) - 联机失败,脱机成功 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_NOT_EXECUTE(102) - 脚本未执行 </li> | |||
* <li>ONLINE_RESULT_SCRIPT_EXECUTE_FAIL(103) - 脚本执行失败 </li> | |||
* <li>ONLINE_RESULT_NO_SCRIPT(104) - 联机失败,未下送脚本 </li> | |||
* <li>ONLINE_RESULT_TOO_MANY_SCRIPT(105) - 联机失败,脚本超过1个 </li> | |||
* <li>ONLINE_RESULT_TERMINATE(106) - 联机失败,交易终止(GAC返回非9000,要提示交易终止,0x8F) </li> | |||
* <li>ONLINE_RESULT_ERROR(107) - 联机失败,EMV内核错误</li> | |||
* </ul> | |||
* @param data - 结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - 交易结果TLV数据 </li> | |||
* <li>SCRIPT_DATA(String) - 脚本结果TLV数据 </li> | |||
* <li>REVERSAL_DATA(String) - 冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
public void onProccessResult(int result, android.os.Bundle data) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,598 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* PBOC交易流程回调接口 | |||
* @author: baoxl | |||
*/ | |||
public interface PBOCHandler extends android.os.IInterface | |||
{ | |||
/** Default implementation for PBOCHandler. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.PBOCHandler | |||
{ | |||
/** | |||
* 请求输入金额 | |||
*/ | |||
@Override public void onRequestAmount() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 请求应用选择 | |||
* @param appList - 应用列表 | |||
*/ | |||
@Override public void onSelectApplication(java.util.List<java.lang.String> appList) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 要求确认卡信息 | |||
* @param info - 卡片信息 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>CARD_SN(String) - 卡片序列号 </li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onConfirmCardInfo(android.os.Bundle info) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 要求输入PIN | |||
* @param isOnlinePin 是否是联机pin | |||
* @param retryTimes 脱机pin的输入次数 | |||
*/ | |||
@Override public void onRequestInputPIN(boolean isOnlinePin, int retryTimes) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 要求确认持卡人证件 | |||
* @param certType - 认证类型 | |||
* @param certInfo - 认证信息 | |||
*/ | |||
@Override public void onConfirmCertInfo(java.lang.String certType, java.lang.String certInfo) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 联机处理请求 | |||
* @param aaResult 卡片分析结果,联机数据 | |||
* <ul> | |||
* <li>RESULT(int) - 结果类型:QPBOC_ARQC(201) - qPBOC联机请求; AARESULT_ARQC(2) - 行为分析结果ARQC</li> | |||
* <li>ARQC_DATA(String) - 联机请求卡片55域数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onRequestOnlineProcess(android.os.Bundle aaResult) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* PBOC交易结果,见于简易流程,qPBOC,以及交易过程失败等 | |||
* @param result - 交易结果 | |||
* <ul> | |||
* <li>EMV_COMPLETE(9) - EMV简易流程结束 </li> | |||
* <li>EMV_ERROR(11) - EMV内核错误</li> | |||
* <li>EMV_FALLBACK(12) - FALLBACK </li> | |||
* <li>EMV_DATA_AUTH_FAIL(13) - 脱机数据认证失败 </li> | |||
* <li>EMV_APP_BLOCKED(14) - 应用被锁定 </li> | |||
* <li>EMV_NOT_ECCARD(15) - 非电子现金卡 </li> | |||
* <li>EMV_UNSUPPORT_ECCARD(16) - 该交易不支持电子现金卡 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_PURELYEC(17) - 纯电子现金卡消费金额超限 </li> | |||
* <li>EMV_SET_PARAM_ERROR(18) - 参数设置错误(9F7A) </li> | |||
* <li>EMV_PAN_NOT_MATCH_TRACK2(19) - 主账号与二磁道不符 </li> | |||
* <li>EMV_CARD_HOLDER_VALIDATE_ERROR(20) - 持卡人认证失败 </li> | |||
* <li>EMV_PURELYEC_REJECT(21) - 纯电子现金卡被拒绝交易 </li> | |||
* <li>EMV_BALANCE_INSUFFICIENT(22) - 余额不足 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_RFLIMIT_CHECK(23) - 交易金额超过非接限额检查 </li> | |||
* <li>EMV_CARD_BIN_CHECK_FAIL(24) - 卡BIN检查失败 </li> | |||
* <li>EMV_CARD_BLOCKED(25) - 卡被锁 </li> | |||
* <li>EMV_MULTI_CARD_ERROR(26) - 多卡冲突 </li> | |||
* <li>EMV_BALANCE_EXCEED(27) - 余额超出 </li> | |||
* <li>EMV_RFCARD_PASS_FAIL(60) - 挥卡失败 </li> | |||
* <li>EMV_IN_QPBOC_PROCESS(99) - QPBOC流程处理中 </li> | |||
* | |||
* <li>AARESULT_TC(0) - 行为分析结果,交易批准(脱机)</li> | |||
* <li>AARESULT_AAC(1) - 行为分析结果,交易拒绝 </li> | |||
* <li>QPBOC_AAC(202) - qPBOC交易结果,交易拒绝</li> | |||
* <li>QPBOC_ERROR(203) - qPBOC交易结果,交易失败 </li> | |||
* <li>QPBOC_TC(204) - qPBOC交易结果,交易批准 </li> | |||
* <li>QPBOC_CONT(205) - qPBOC结果,转接触式卡 </li> | |||
* <li>QPBOC_NO_APP(206) - qPBOC交易结果,无应用(可转UP Card)</li> | |||
* <li>QPBOC_NOT_CPU_CARD(207) - qPBOC交易结果,该卡非TYPE B/PRO卡</li> | |||
* </ul> | |||
* | |||
* @param data 交易结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - IC卡交易批准卡片返回数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正数据 </li> | |||
* <li>ERROR(String) - 错误描述(PBOC流程错误返回) </li> | |||
* </ul> | |||
*/ | |||
@Override public void onTransactionResult(int result, android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.PBOCHandler | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.PBOCHandler"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.PBOCHandler interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.PBOCHandler asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.PBOCHandler))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.PBOCHandler)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.PBOCHandler.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onRequestAmount: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onRequestAmount(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onSelectApplication: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.util.List<java.lang.String> _arg0; | |||
_arg0 = data.createStringArrayList(); | |||
this.onSelectApplication(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onConfirmCardInfo: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
this.onConfirmCardInfo(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onRequestInputPIN: | |||
{ | |||
data.enforceInterface(descriptor); | |||
boolean _arg0; | |||
_arg0 = (0!=data.readInt()); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
this.onRequestInputPIN(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onConfirmCertInfo: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _arg0; | |||
_arg0 = data.readString(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onConfirmCertInfo(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onRequestOnlineProcess: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
this.onRequestOnlineProcess(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onTransactionResult: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
android.os.Bundle _arg1; | |||
if ((0!=data.readInt())) { | |||
_arg1 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg1 = null; | |||
} | |||
this.onTransactionResult(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.PBOCHandler | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 请求输入金额 | |||
*/ | |||
@Override public void onRequestAmount() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onRequestAmount, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onRequestAmount(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 请求应用选择 | |||
* @param appList - 应用列表 | |||
*/ | |||
@Override public void onSelectApplication(java.util.List<java.lang.String> appList) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeStringList(appList); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onSelectApplication, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onSelectApplication(appList); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 要求确认卡信息 | |||
* @param info - 卡片信息 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>CARD_SN(String) - 卡片序列号 </li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onConfirmCardInfo(android.os.Bundle info) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((info!=null)) { | |||
_data.writeInt(1); | |||
info.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onConfirmCardInfo, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onConfirmCardInfo(info); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 要求输入PIN | |||
* @param isOnlinePin 是否是联机pin | |||
* @param retryTimes 脱机pin的输入次数 | |||
*/ | |||
@Override public void onRequestInputPIN(boolean isOnlinePin, int retryTimes) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(((isOnlinePin)?(1):(0))); | |||
_data.writeInt(retryTimes); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onRequestInputPIN, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onRequestInputPIN(isOnlinePin, retryTimes); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 要求确认持卡人证件 | |||
* @param certType - 认证类型 | |||
* @param certInfo - 认证信息 | |||
*/ | |||
@Override public void onConfirmCertInfo(java.lang.String certType, java.lang.String certInfo) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeString(certType); | |||
_data.writeString(certInfo); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onConfirmCertInfo, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onConfirmCertInfo(certType, certInfo); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 联机处理请求 | |||
* @param aaResult 卡片分析结果,联机数据 | |||
* <ul> | |||
* <li>RESULT(int) - 结果类型:QPBOC_ARQC(201) - qPBOC联机请求; AARESULT_ARQC(2) - 行为分析结果ARQC</li> | |||
* <li>ARQC_DATA(String) - 联机请求卡片55域数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
@Override public void onRequestOnlineProcess(android.os.Bundle aaResult) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((aaResult!=null)) { | |||
_data.writeInt(1); | |||
aaResult.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onRequestOnlineProcess, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onRequestOnlineProcess(aaResult); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* PBOC交易结果,见于简易流程,qPBOC,以及交易过程失败等 | |||
* @param result - 交易结果 | |||
* <ul> | |||
* <li>EMV_COMPLETE(9) - EMV简易流程结束 </li> | |||
* <li>EMV_ERROR(11) - EMV内核错误</li> | |||
* <li>EMV_FALLBACK(12) - FALLBACK </li> | |||
* <li>EMV_DATA_AUTH_FAIL(13) - 脱机数据认证失败 </li> | |||
* <li>EMV_APP_BLOCKED(14) - 应用被锁定 </li> | |||
* <li>EMV_NOT_ECCARD(15) - 非电子现金卡 </li> | |||
* <li>EMV_UNSUPPORT_ECCARD(16) - 该交易不支持电子现金卡 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_PURELYEC(17) - 纯电子现金卡消费金额超限 </li> | |||
* <li>EMV_SET_PARAM_ERROR(18) - 参数设置错误(9F7A) </li> | |||
* <li>EMV_PAN_NOT_MATCH_TRACK2(19) - 主账号与二磁道不符 </li> | |||
* <li>EMV_CARD_HOLDER_VALIDATE_ERROR(20) - 持卡人认证失败 </li> | |||
* <li>EMV_PURELYEC_REJECT(21) - 纯电子现金卡被拒绝交易 </li> | |||
* <li>EMV_BALANCE_INSUFFICIENT(22) - 余额不足 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_RFLIMIT_CHECK(23) - 交易金额超过非接限额检查 </li> | |||
* <li>EMV_CARD_BIN_CHECK_FAIL(24) - 卡BIN检查失败 </li> | |||
* <li>EMV_CARD_BLOCKED(25) - 卡被锁 </li> | |||
* <li>EMV_MULTI_CARD_ERROR(26) - 多卡冲突 </li> | |||
* <li>EMV_BALANCE_EXCEED(27) - 余额超出 </li> | |||
* <li>EMV_RFCARD_PASS_FAIL(60) - 挥卡失败 </li> | |||
* <li>EMV_IN_QPBOC_PROCESS(99) - QPBOC流程处理中 </li> | |||
* | |||
* <li>AARESULT_TC(0) - 行为分析结果,交易批准(脱机)</li> | |||
* <li>AARESULT_AAC(1) - 行为分析结果,交易拒绝 </li> | |||
* <li>QPBOC_AAC(202) - qPBOC交易结果,交易拒绝</li> | |||
* <li>QPBOC_ERROR(203) - qPBOC交易结果,交易失败 </li> | |||
* <li>QPBOC_TC(204) - qPBOC交易结果,交易批准 </li> | |||
* <li>QPBOC_CONT(205) - qPBOC结果,转接触式卡 </li> | |||
* <li>QPBOC_NO_APP(206) - qPBOC交易结果,无应用(可转UP Card)</li> | |||
* <li>QPBOC_NOT_CPU_CARD(207) - qPBOC交易结果,该卡非TYPE B/PRO卡</li> | |||
* </ul> | |||
* | |||
* @param data 交易结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - IC卡交易批准卡片返回数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正数据 </li> | |||
* <li>ERROR(String) - 错误描述(PBOC流程错误返回) </li> | |||
* </ul> | |||
*/ | |||
@Override public void onTransactionResult(int result, android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(result); | |||
if ((data!=null)) { | |||
_data.writeInt(1); | |||
data.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onTransactionResult, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onTransactionResult(result, data); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PBOCHandler sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onRequestAmount = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onSelectApplication = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_onConfirmCardInfo = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_onRequestInputPIN = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
static final int TRANSACTION_onConfirmCertInfo = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); | |||
static final int TRANSACTION_onRequestOnlineProcess = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); | |||
static final int TRANSACTION_onTransactionResult = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.PBOCHandler impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PBOCHandler getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 请求输入金额 | |||
*/ | |||
public void onRequestAmount() throws android.os.RemoteException; | |||
/** | |||
* 请求应用选择 | |||
* @param appList - 应用列表 | |||
*/ | |||
public void onSelectApplication(java.util.List<java.lang.String> appList) throws android.os.RemoteException; | |||
/** | |||
* 要求确认卡信息 | |||
* @param info - 卡片信息 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>CARD_SN(String) - 卡片序列号 </li> | |||
* <li>SERVICE_CODE(String) - 服务码 </li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* </ul> | |||
*/ | |||
public void onConfirmCardInfo(android.os.Bundle info) throws android.os.RemoteException; | |||
/** | |||
* 要求输入PIN | |||
* @param isOnlinePin 是否是联机pin | |||
* @param retryTimes 脱机pin的输入次数 | |||
*/ | |||
public void onRequestInputPIN(boolean isOnlinePin, int retryTimes) throws android.os.RemoteException; | |||
/** | |||
* 要求确认持卡人证件 | |||
* @param certType - 认证类型 | |||
* @param certInfo - 认证信息 | |||
*/ | |||
public void onConfirmCertInfo(java.lang.String certType, java.lang.String certInfo) throws android.os.RemoteException; | |||
/** | |||
* 联机处理请求 | |||
* @param aaResult 卡片分析结果,联机数据 | |||
* <ul> | |||
* <li>RESULT(int) - 结果类型:QPBOC_ARQC(201) - qPBOC联机请求; AARESULT_ARQC(2) - 行为分析结果ARQC</li> | |||
* <li>ARQC_DATA(String) - 联机请求卡片55域数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正TLV数据 </li> | |||
* </ul> | |||
*/ | |||
public void onRequestOnlineProcess(android.os.Bundle aaResult) throws android.os.RemoteException; | |||
/** | |||
* PBOC交易结果,见于简易流程,qPBOC,以及交易过程失败等 | |||
* @param result - 交易结果 | |||
* <ul> | |||
* <li>EMV_COMPLETE(9) - EMV简易流程结束 </li> | |||
* <li>EMV_ERROR(11) - EMV内核错误</li> | |||
* <li>EMV_FALLBACK(12) - FALLBACK </li> | |||
* <li>EMV_DATA_AUTH_FAIL(13) - 脱机数据认证失败 </li> | |||
* <li>EMV_APP_BLOCKED(14) - 应用被锁定 </li> | |||
* <li>EMV_NOT_ECCARD(15) - 非电子现金卡 </li> | |||
* <li>EMV_UNSUPPORT_ECCARD(16) - 该交易不支持电子现金卡 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_PURELYEC(17) - 纯电子现金卡消费金额超限 </li> | |||
* <li>EMV_SET_PARAM_ERROR(18) - 参数设置错误(9F7A) </li> | |||
* <li>EMV_PAN_NOT_MATCH_TRACK2(19) - 主账号与二磁道不符 </li> | |||
* <li>EMV_CARD_HOLDER_VALIDATE_ERROR(20) - 持卡人认证失败 </li> | |||
* <li>EMV_PURELYEC_REJECT(21) - 纯电子现金卡被拒绝交易 </li> | |||
* <li>EMV_BALANCE_INSUFFICIENT(22) - 余额不足 </li> | |||
* <li>EMV_AMOUNT_EXCEED_ON_RFLIMIT_CHECK(23) - 交易金额超过非接限额检查 </li> | |||
* <li>EMV_CARD_BIN_CHECK_FAIL(24) - 卡BIN检查失败 </li> | |||
* <li>EMV_CARD_BLOCKED(25) - 卡被锁 </li> | |||
* <li>EMV_MULTI_CARD_ERROR(26) - 多卡冲突 </li> | |||
* <li>EMV_BALANCE_EXCEED(27) - 余额超出 </li> | |||
* <li>EMV_RFCARD_PASS_FAIL(60) - 挥卡失败 </li> | |||
* <li>EMV_IN_QPBOC_PROCESS(99) - QPBOC流程处理中 </li> | |||
* | |||
* <li>AARESULT_TC(0) - 行为分析结果,交易批准(脱机)</li> | |||
* <li>AARESULT_AAC(1) - 行为分析结果,交易拒绝 </li> | |||
* <li>QPBOC_AAC(202) - qPBOC交易结果,交易拒绝</li> | |||
* <li>QPBOC_ERROR(203) - qPBOC交易结果,交易失败 </li> | |||
* <li>QPBOC_TC(204) - qPBOC交易结果,交易批准 </li> | |||
* <li>QPBOC_CONT(205) - qPBOC结果,转接触式卡 </li> | |||
* <li>QPBOC_NO_APP(206) - qPBOC交易结果,无应用(可转UP Card)</li> | |||
* <li>QPBOC_NOT_CPU_CARD(207) - qPBOC交易结果,该卡非TYPE B/PRO卡</li> | |||
* </ul> | |||
* | |||
* @param data 交易结果数据 | |||
* <ul> | |||
* <li>TC_DATA(String) - IC卡交易批准卡片返回数据 </li> | |||
* <li>REVERSAL_DATA(String) - IC卡冲正数据 </li> | |||
* <li>ERROR(String) - 错误描述(PBOC流程错误返回) </li> | |||
* </ul> | |||
*/ | |||
public void onTransactionResult(int result, android.os.Bundle data) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,277 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* PIN输入过程监听器 | |||
* @author: baoxl | |||
*/ | |||
public interface PinInputListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for PinInputListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.PinInputListener | |||
{ | |||
/** | |||
* 按键按压事件 | |||
* @param len - 已输入密码长度 | |||
* @param key - 当前的Key值 | |||
*/ | |||
@Override public void onInput(int len, int key) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 用户确认PIN输入时调用 | |||
* @param data - pin码,输入为空时候,为null | |||
* @param isNonePin - 输入为空的时候为true | |||
*/ | |||
@Override public void onConfirm(byte[] data, boolean isNonePin) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 取消PIN输入时调用 | |||
*/ | |||
@Override public void onCancel() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 错误时回调 | |||
* @param errorCode - 错误码 | |||
*/ | |||
@Override public void onError(int errorCode) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.PinInputListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.PinInputListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.PinInputListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.PinInputListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.PinInputListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.PinInputListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.PinInputListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onInput: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
int _arg1; | |||
_arg1 = data.readInt(); | |||
this.onInput(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onConfirm: | |||
{ | |||
data.enforceInterface(descriptor); | |||
byte[] _arg0; | |||
_arg0 = data.createByteArray(); | |||
boolean _arg1; | |||
_arg1 = (0!=data.readInt()); | |||
this.onConfirm(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onCancel: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onCancel(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.onError(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.PinInputListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 按键按压事件 | |||
* @param len - 已输入密码长度 | |||
* @param key - 当前的Key值 | |||
*/ | |||
@Override public void onInput(int len, int key) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(len); | |||
_data.writeInt(key); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onInput, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onInput(len, key); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 用户确认PIN输入时调用 | |||
* @param data - pin码,输入为空时候,为null | |||
* @param isNonePin - 输入为空的时候为true | |||
*/ | |||
@Override public void onConfirm(byte[] data, boolean isNonePin) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeByteArray(data); | |||
_data.writeInt(((isNonePin)?(1):(0))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onConfirm, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onConfirm(data, isNonePin); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 取消PIN输入时调用 | |||
*/ | |||
@Override public void onCancel() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCancel, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCancel(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 错误时回调 | |||
* @param errorCode - 错误码 | |||
*/ | |||
@Override public void onError(int errorCode) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(errorCode); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(errorCode); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PinInputListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onInput = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onConfirm = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_onCancel = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.PinInputListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PinInputListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 按键按压事件 | |||
* @param len - 已输入密码长度 | |||
* @param key - 当前的Key值 | |||
*/ | |||
public void onInput(int len, int key) throws android.os.RemoteException; | |||
/** | |||
* 用户确认PIN输入时调用 | |||
* @param data - pin码,输入为空时候,为null | |||
* @param isNonePin - 输入为空的时候为true | |||
*/ | |||
public void onConfirm(byte[] data, boolean isNonePin) throws android.os.RemoteException; | |||
/** | |||
* 取消PIN输入时调用 | |||
*/ | |||
public void onCancel() throws android.os.RemoteException; | |||
/** | |||
* 错误时回调 | |||
* @param errorCode - 错误码 | |||
*/ | |||
public void onError(int errorCode) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,175 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 打印结果监听器 | |||
* @author: baoxl | |||
*/ | |||
public interface PrinterListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for PrinterListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.PrinterListener | |||
{ | |||
/** | |||
* 打印成功回调 | |||
*/ | |||
@Override public void onFinish() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 打印失败回调 | |||
* @param error - 错误码 | |||
*/ | |||
@Override public void onError(int error) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.PrinterListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.PrinterListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.PrinterListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.PrinterListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.PrinterListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.PrinterListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.PrinterListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onFinish: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onFinish(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.onError(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.PrinterListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 打印成功回调 | |||
*/ | |||
@Override public void onFinish() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onFinish, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onFinish(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 打印失败回调 | |||
* @param error - 错误码 | |||
*/ | |||
@Override public void onError(int error) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(error); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PrinterListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onFinish = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.PrinterListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.PrinterListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 打印成功回调 | |||
*/ | |||
public void onFinish() throws android.os.RemoteException; | |||
/** | |||
* 打印失败回调 | |||
* @param error - 错误码 | |||
*/ | |||
public void onError(int error) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,238 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 非接寻卡过程监听接口定义 | |||
* @author: baoxl | |||
*/ | |||
public interface RFSearchListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for RFSearchListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.RFSearchListener | |||
{ | |||
/** | |||
* 检测到磁条卡 | |||
* @param cardType - 卡类型 | |||
* <ul> | |||
* <li>S50_CARD(0x00) - S50卡</li> | |||
* <li>S70_CARD(0x01) - S70卡</li> | |||
* <li>PRO_CARD(0x02) - PRO卡</li> | |||
* <li>S50_PRO_CARD(0x03) - 支持S50驱动与PRO驱动的PRO卡</li> | |||
* <li>S70_PRO_CARD(0x04) - 支持S70驱动与PRO驱动的PRO卡 </li> | |||
* <li>CPU_CARD(0x05) - CPU卡</li> | |||
* </ul> | |||
*/ | |||
@Override public void onCardPass(int cardType) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 寻卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_TRANSERR(0xA2) - 通讯错误 </li> | |||
* <li>ERROR_PROTERR(0xA3) - 卡片返回数据不符合规范要求</li> | |||
* <li>ERROR_MULTIERR(0xA4) - 感应区内多卡存在</li> | |||
* <li>ERROR_CARDTIMEOUT(0xA7) - 超时无响应</li> | |||
* <li>ERROR_CARDNOACT(0xB3) - Pro卡或者TypeB卡未激活</li> | |||
* <li>ERROR_MCSERVICE_CRASH(0xff01) - 主控服务异常</li> | |||
* <li>ERROR_REQUEST_EXCEPTION(0xff02) - 请求异常</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onFail(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.RFSearchListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.RFSearchListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.RFSearchListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.RFSearchListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.RFSearchListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.RFSearchListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.RFSearchListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onCardPass: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
this.onCardPass(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onFail: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onFail(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.RFSearchListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 检测到磁条卡 | |||
* @param cardType - 卡类型 | |||
* <ul> | |||
* <li>S50_CARD(0x00) - S50卡</li> | |||
* <li>S70_CARD(0x01) - S70卡</li> | |||
* <li>PRO_CARD(0x02) - PRO卡</li> | |||
* <li>S50_PRO_CARD(0x03) - 支持S50驱动与PRO驱动的PRO卡</li> | |||
* <li>S70_PRO_CARD(0x04) - 支持S70驱动与PRO驱动的PRO卡 </li> | |||
* <li>CPU_CARD(0x05) - CPU卡</li> | |||
* </ul> | |||
*/ | |||
@Override public void onCardPass(int cardType) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(cardType); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCardPass, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCardPass(cardType); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 寻卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_TRANSERR(0xA2) - 通讯错误 </li> | |||
* <li>ERROR_PROTERR(0xA3) - 卡片返回数据不符合规范要求</li> | |||
* <li>ERROR_MULTIERR(0xA4) - 感应区内多卡存在</li> | |||
* <li>ERROR_CARDTIMEOUT(0xA7) - 超时无响应</li> | |||
* <li>ERROR_CARDNOACT(0xB3) - Pro卡或者TypeB卡未激活</li> | |||
* <li>ERROR_MCSERVICE_CRASH(0xff01) - 主控服务异常</li> | |||
* <li>ERROR_REQUEST_EXCEPTION(0xff02) - 请求异常</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onFail(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
_data.writeString(message); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onFail, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onFail(error, message); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.RFSearchListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onCardPass = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onFail = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.RFSearchListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.RFSearchListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 检测到磁条卡 | |||
* @param cardType - 卡类型 | |||
* <ul> | |||
* <li>S50_CARD(0x00) - S50卡</li> | |||
* <li>S70_CARD(0x01) - S70卡</li> | |||
* <li>PRO_CARD(0x02) - PRO卡</li> | |||
* <li>S50_PRO_CARD(0x03) - 支持S50驱动与PRO驱动的PRO卡</li> | |||
* <li>S70_PRO_CARD(0x04) - 支持S70驱动与PRO驱动的PRO卡 </li> | |||
* <li>CPU_CARD(0x05) - CPU卡</li> | |||
* </ul> | |||
*/ | |||
public void onCardPass(int cardType) throws android.os.RemoteException; | |||
/** | |||
* 寻卡失败回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_TRANSERR(0xA2) - 通讯错误 </li> | |||
* <li>ERROR_PROTERR(0xA3) - 卡片返回数据不符合规范要求</li> | |||
* <li>ERROR_MULTIERR(0xA4) - 感应区内多卡存在</li> | |||
* <li>ERROR_CARDTIMEOUT(0xA7) - 超时无响应</li> | |||
* <li>ERROR_CARDNOACT(0xB3) - Pro卡或者TypeB卡未激活</li> | |||
* <li>ERROR_MCSERVICE_CRASH(0xff01) - 主控服务异常</li> | |||
* <li>ERROR_REQUEST_EXCEPTION(0xff02) - 请求异常</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
public void onFail(int error, java.lang.String message) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,265 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 扫码器扫码结果监听器 | |||
* @author: baoxl | |||
*/ | |||
public interface ScannerListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for ScannerListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.ScannerListener | |||
{ | |||
/** | |||
* 扫码成功回调 | |||
* @param barcode - 条码 | |||
*/ | |||
@Override public void onSuccess(java.lang.String barcode) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 扫码出错 | |||
* @param error - 错误码 | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 扫码超时回调 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 扫码取消回调 | |||
*/ | |||
@Override public void onCancel() throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.ScannerListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.ScannerListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.ScannerListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.ScannerListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.ScannerListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.ScannerListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.ScannerListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onSuccess: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _arg0; | |||
_arg0 = data.readString(); | |||
this.onSuccess(_arg0); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onError(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onTimeout: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onTimeout(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
case TRANSACTION_onCancel: | |||
{ | |||
data.enforceInterface(descriptor); | |||
this.onCancel(); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.ScannerListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 扫码成功回调 | |||
* @param barcode - 条码 | |||
*/ | |||
@Override public void onSuccess(java.lang.String barcode) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeString(barcode); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onSuccess, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onSuccess(barcode); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 扫码出错 | |||
* @param error - 错误码 | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
_data.writeString(message); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(error, message); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 扫码超时回调 | |||
*/ | |||
@Override public void onTimeout() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onTimeout, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onTimeout(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 扫码取消回调 | |||
*/ | |||
@Override public void onCancel() throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onCancel, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onCancel(); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ScannerListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onSuccess = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
static final int TRANSACTION_onTimeout = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); | |||
static final int TRANSACTION_onCancel = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.ScannerListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.ScannerListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 扫码成功回调 | |||
* @param barcode - 条码 | |||
*/ | |||
public void onSuccess(java.lang.String barcode) throws android.os.RemoteException; | |||
/** | |||
* 扫码出错 | |||
* @param error - 错误码 | |||
* @param message - 错误描述 | |||
*/ | |||
public void onError(int error, java.lang.String message) throws android.os.RemoteException; | |||
/** | |||
* 扫码超时回调 | |||
*/ | |||
public void onTimeout() throws android.os.RemoteException; | |||
/** | |||
* 扫码取消回调 | |||
*/ | |||
public void onCancel() throws android.os.RemoteException; | |||
} |
@@ -0,0 +1 @@ | |||
// This file is intentionally left blank as placeholder for parcel declaration. |
@@ -0,0 +1,241 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.deviceservice.aidl; | |||
/** | |||
* 读手机芯片卡结果监听器 | |||
* @author: baoxl | |||
*/ | |||
public interface UPCardListener extends android.os.IInterface | |||
{ | |||
/** Default implementation for UPCardListener. */ | |||
public static class Default implements com.icbc.smartpos.deviceservice.aidl.UPCardListener | |||
{ | |||
/** | |||
* 读卡成功回调 | |||
* @param data - 芯片卡卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>CARD_SN(String) - 卡片序列号</li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* <li>TLV_DATA(String) - 带标签(DF32,DF33,DF34)TLV数据</li> | |||
* </ul> | |||
*/ | |||
@Override public void onRead(android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
} | |||
/** | |||
* 读卡错误回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_DETECT_CARD(1) - 识别卡失败</li> | |||
* <li>ERROR_READ_SN(2) - 读卡序列号失败</li> | |||
* <li>ERROR_READ_TRACK(3) - 读卡信息失败</li> | |||
* <li>ERROR_SERVICE_CRASH(4) - 设备服务异常</li> | |||
* <li>ERROR_NULL_DRIVER(5) - 非接驱动为null</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.deviceservice.aidl.UPCardListener | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.deviceservice.aidl.UPCardListener"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.deviceservice.aidl.UPCardListener interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.deviceservice.aidl.UPCardListener asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.deviceservice.aidl.UPCardListener))) { | |||
return ((com.icbc.smartpos.deviceservice.aidl.UPCardListener)iin); | |||
} | |||
return new com.icbc.smartpos.deviceservice.aidl.UPCardListener.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onRead: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
_arg0 = new android.os.Bundle(); | |||
this.onRead(_arg0); | |||
reply.writeNoException(); | |||
if ((_arg0!=null)) { | |||
reply.writeInt(1); | |||
_arg0.writeToParcel(reply, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); | |||
} | |||
else { | |||
reply.writeInt(0); | |||
} | |||
return true; | |||
} | |||
case TRANSACTION_onError: | |||
{ | |||
data.enforceInterface(descriptor); | |||
int _arg0; | |||
_arg0 = data.readInt(); | |||
java.lang.String _arg1; | |||
_arg1 = data.readString(); | |||
this.onError(_arg0, _arg1); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.deviceservice.aidl.UPCardListener | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
/** | |||
* 读卡成功回调 | |||
* @param data - 芯片卡卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>CARD_SN(String) - 卡片序列号</li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* <li>TLV_DATA(String) - 带标签(DF32,DF33,DF34)TLV数据</li> | |||
* </ul> | |||
*/ | |||
@Override public void onRead(android.os.Bundle data) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onRead, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onRead(data); | |||
return; | |||
} | |||
_reply.readException(); | |||
if ((0!=_reply.readInt())) { | |||
data.readFromParcel(_reply); | |||
} | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
/** | |||
* 读卡错误回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_DETECT_CARD(1) - 识别卡失败</li> | |||
* <li>ERROR_READ_SN(2) - 读卡序列号失败</li> | |||
* <li>ERROR_READ_TRACK(3) - 读卡信息失败</li> | |||
* <li>ERROR_SERVICE_CRASH(4) - 设备服务异常</li> | |||
* <li>ERROR_NULL_DRIVER(5) - 非接驱动为null</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
@Override public void onError(int error, java.lang.String message) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeInt(error); | |||
_data.writeString(message); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onError, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onError(error, message); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.UPCardListener sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onRead = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
static final int TRANSACTION_onError = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.deviceservice.aidl.UPCardListener impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.deviceservice.aidl.UPCardListener getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
/** | |||
* 读卡成功回调 | |||
* @param data - 芯片卡卡数据 | |||
* <ul> | |||
* <li>PAN(String) - 主账号(卡号)</li> | |||
* <li>TRACK2(String) - 磁道2数据 </li> | |||
* <li>TRACK3(String) - 磁道3数据</li> | |||
* <li>CARD_SN(String) - 卡片序列号</li> | |||
* <li>EXPIRED_DATE(String) - 卡片有效期 </li> | |||
* <li>TLV_DATA(String) - 带标签(DF32,DF33,DF34)TLV数据</li> | |||
* </ul> | |||
*/ | |||
public void onRead(android.os.Bundle data) throws android.os.RemoteException; | |||
/** | |||
* 读卡错误回调 | |||
* @param error - 错误码 | |||
* <ul> | |||
* <li>ERROR_DETECT_CARD(1) - 识别卡失败</li> | |||
* <li>ERROR_READ_SN(2) - 读卡序列号失败</li> | |||
* <li>ERROR_READ_TRACK(3) - 读卡信息失败</li> | |||
* <li>ERROR_SERVICE_CRASH(4) - 设备服务异常</li> | |||
* <li>ERROR_NULL_DRIVER(5) - 非接驱动为null</li> | |||
* </ul> | |||
* @param message - 错误描述 | |||
*/ | |||
public void onError(int error, java.lang.String message) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,159 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.transservice.aidl; | |||
/** | |||
* 交易调用接口 | |||
* @author: icbc | |||
*/ | |||
public interface ITransService extends android.os.IInterface | |||
{ | |||
/** Default implementation for ITransService. */ | |||
public static class Default implements com.icbc.smartpos.transservice.aidl.ITransService | |||
{ | |||
@Override public long startTrans(java.lang.String transType, android.os.Bundle ctrlData, android.os.Bundle transData, com.icbc.smartpos.transservice.aidl.TransHandler handler) throws android.os.RemoteException | |||
{ | |||
return 0L; | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.transservice.aidl.ITransService | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.transservice.aidl.ITransService"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.transservice.aidl.ITransService interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.transservice.aidl.ITransService asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.transservice.aidl.ITransService))) { | |||
return ((com.icbc.smartpos.transservice.aidl.ITransService)iin); | |||
} | |||
return new com.icbc.smartpos.transservice.aidl.ITransService.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_startTrans: | |||
{ | |||
data.enforceInterface(descriptor); | |||
java.lang.String _arg0; | |||
_arg0 = data.readString(); | |||
android.os.Bundle _arg1; | |||
if ((0!=data.readInt())) { | |||
_arg1 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg1 = null; | |||
} | |||
android.os.Bundle _arg2; | |||
if ((0!=data.readInt())) { | |||
_arg2 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg2 = null; | |||
} | |||
com.icbc.smartpos.transservice.aidl.TransHandler _arg3; | |||
_arg3 = com.icbc.smartpos.transservice.aidl.TransHandler.Stub.asInterface(data.readStrongBinder()); | |||
long _result = this.startTrans(_arg0, _arg1, _arg2, _arg3); | |||
reply.writeNoException(); | |||
reply.writeLong(_result); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.transservice.aidl.ITransService | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
@Override public long startTrans(java.lang.String transType, android.os.Bundle ctrlData, android.os.Bundle transData, com.icbc.smartpos.transservice.aidl.TransHandler handler) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
long _result; | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
_data.writeString(transType); | |||
if ((ctrlData!=null)) { | |||
_data.writeInt(1); | |||
ctrlData.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
if ((transData!=null)) { | |||
_data.writeInt(1); | |||
transData.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
_data.writeStrongBinder((((handler!=null))?(handler.asBinder()):(null))); | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_startTrans, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
return getDefaultImpl().startTrans(transType, ctrlData, transData, handler); | |||
} | |||
_reply.readException(); | |||
_result = _reply.readLong(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
return _result; | |||
} | |||
public static com.icbc.smartpos.transservice.aidl.ITransService sDefaultImpl; | |||
} | |||
static final int TRANSACTION_startTrans = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.transservice.aidl.ITransService impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.transservice.aidl.ITransService getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
public long startTrans(java.lang.String transType, android.os.Bundle ctrlData, android.os.Bundle transData, com.icbc.smartpos.transservice.aidl.TransHandler handler) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,163 @@ | |||
/* | |||
* This file is auto-generated. DO NOT MODIFY. | |||
*/ | |||
package com.icbc.smartpos.transservice.aidl; | |||
/** | |||
* 交易流程回调接口 | |||
* @author: icbc | |||
*/ | |||
public interface TransHandler extends android.os.IInterface | |||
{ | |||
/** Default implementation for TransHandler. */ | |||
public static class Default implements com.icbc.smartpos.transservice.aidl.TransHandler | |||
{ | |||
@Override public void onFinish(android.os.Bundle baseResult, android.os.Bundle transResult, android.os.Bundle extraInfo) throws android.os.RemoteException | |||
{ | |||
} | |||
@Override | |||
public android.os.IBinder asBinder() { | |||
return null; | |||
} | |||
} | |||
/** Local-side IPC implementation stub class. */ | |||
public static abstract class Stub extends android.os.Binder implements com.icbc.smartpos.transservice.aidl.TransHandler | |||
{ | |||
private static final java.lang.String DESCRIPTOR = "com.icbc.smartpos.transservice.aidl.TransHandler"; | |||
/** Construct the stub at attach it to the interface. */ | |||
public Stub() | |||
{ | |||
this.attachInterface(this, DESCRIPTOR); | |||
} | |||
/** | |||
* Cast an IBinder object into an com.icbc.smartpos.transservice.aidl.TransHandler interface, | |||
* generating a proxy if needed. | |||
*/ | |||
public static com.icbc.smartpos.transservice.aidl.TransHandler asInterface(android.os.IBinder obj) | |||
{ | |||
if ((obj==null)) { | |||
return null; | |||
} | |||
android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); | |||
if (((iin!=null)&&(iin instanceof com.icbc.smartpos.transservice.aidl.TransHandler))) { | |||
return ((com.icbc.smartpos.transservice.aidl.TransHandler)iin); | |||
} | |||
return new com.icbc.smartpos.transservice.aidl.TransHandler.Stub.Proxy(obj); | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return this; | |||
} | |||
@Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException | |||
{ | |||
java.lang.String descriptor = DESCRIPTOR; | |||
switch (code) | |||
{ | |||
case INTERFACE_TRANSACTION: | |||
{ | |||
reply.writeString(descriptor); | |||
return true; | |||
} | |||
case TRANSACTION_onFinish: | |||
{ | |||
data.enforceInterface(descriptor); | |||
android.os.Bundle _arg0; | |||
if ((0!=data.readInt())) { | |||
_arg0 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg0 = null; | |||
} | |||
android.os.Bundle _arg1; | |||
if ((0!=data.readInt())) { | |||
_arg1 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg1 = null; | |||
} | |||
android.os.Bundle _arg2; | |||
if ((0!=data.readInt())) { | |||
_arg2 = android.os.Bundle.CREATOR.createFromParcel(data); | |||
} | |||
else { | |||
_arg2 = null; | |||
} | |||
this.onFinish(_arg0, _arg1, _arg2); | |||
reply.writeNoException(); | |||
return true; | |||
} | |||
default: | |||
{ | |||
return super.onTransact(code, data, reply, flags); | |||
} | |||
} | |||
} | |||
private static class Proxy implements com.icbc.smartpos.transservice.aidl.TransHandler | |||
{ | |||
private android.os.IBinder mRemote; | |||
Proxy(android.os.IBinder remote) | |||
{ | |||
mRemote = remote; | |||
} | |||
@Override public android.os.IBinder asBinder() | |||
{ | |||
return mRemote; | |||
} | |||
public java.lang.String getInterfaceDescriptor() | |||
{ | |||
return DESCRIPTOR; | |||
} | |||
@Override public void onFinish(android.os.Bundle baseResult, android.os.Bundle transResult, android.os.Bundle extraInfo) throws android.os.RemoteException | |||
{ | |||
android.os.Parcel _data = android.os.Parcel.obtain(); | |||
android.os.Parcel _reply = android.os.Parcel.obtain(); | |||
try { | |||
_data.writeInterfaceToken(DESCRIPTOR); | |||
if ((baseResult!=null)) { | |||
_data.writeInt(1); | |||
baseResult.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
if ((transResult!=null)) { | |||
_data.writeInt(1); | |||
transResult.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
if ((extraInfo!=null)) { | |||
_data.writeInt(1); | |||
extraInfo.writeToParcel(_data, 0); | |||
} | |||
else { | |||
_data.writeInt(0); | |||
} | |||
boolean _status = mRemote.transact(Stub.TRANSACTION_onFinish, _data, _reply, 0); | |||
if (!_status && getDefaultImpl() != null) { | |||
getDefaultImpl().onFinish(baseResult, transResult, extraInfo); | |||
return; | |||
} | |||
_reply.readException(); | |||
} | |||
finally { | |||
_reply.recycle(); | |||
_data.recycle(); | |||
} | |||
} | |||
public static com.icbc.smartpos.transservice.aidl.TransHandler sDefaultImpl; | |||
} | |||
static final int TRANSACTION_onFinish = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); | |||
public static boolean setDefaultImpl(com.icbc.smartpos.transservice.aidl.TransHandler impl) { | |||
if (Stub.Proxy.sDefaultImpl == null && impl != null) { | |||
Stub.Proxy.sDefaultImpl = impl; | |||
return true; | |||
} | |||
return false; | |||
} | |||
public static com.icbc.smartpos.transservice.aidl.TransHandler getDefaultImpl() { | |||
return Stub.Proxy.sDefaultImpl; | |||
} | |||
} | |||
public void onFinish(android.os.Bundle baseResult, android.os.Bundle transResult, android.os.Bundle extraInfo) throws android.os.RemoteException; | |||
} |
@@ -0,0 +1,13 @@ | |||
/** | |||
* Automatically generated file. DO NOT MODIFY | |||
*/ | |||
package com.neusoft.umsips.test; | |||
public final class BuildConfig { | |||
public static final boolean DEBUG = Boolean.parseBoolean("true"); | |||
public static final String APPLICATION_ID = "com.neusoft.umsips.test"; | |||
public static final String BUILD_TYPE = "debug"; | |||
public static final String FLAVOR = ""; | |||
public static final int VERSION_CODE = -1; | |||
public static final String VERSION_NAME = ""; | |||
} |
@@ -0,0 +1,13 @@ | |||
/** | |||
* Automatically generated file. DO NOT MODIFY | |||
*/ | |||
package com.neusoft.umsips; | |||
public final class BuildConfig { | |||
public static final boolean DEBUG = Boolean.parseBoolean("true"); | |||
public static final String APPLICATION_ID = "com.neusoft.umsips"; | |||
public static final String BUILD_TYPE = "debug"; | |||
public static final String FLAVOR = ""; | |||
public static final int VERSION_CODE = 1; | |||
public static final String VERSION_NAME = "1.0"; | |||
} |
@@ -0,0 +1,11 @@ | |||
/* AUTO-GENERATED FILE. DO NOT MODIFY. | |||
* | |||
* This class was automatically generated by the | |||
* aapt tool from the resource data it found. It | |||
* should not be modified by hand. | |||
*/ | |||
package com.neusoft.umsips.test; | |||
public final class R { | |||
} |
@@ -0,0 +1,100 @@ | |||
/* AUTO-GENERATED FILE. DO NOT MODIFY. | |||
* | |||
* This class was automatically generated by the | |||
* aapt tool from the resource data it found. It | |||
* should not be modified by hand. | |||
*/ | |||
package com.neusoft.umsips; | |||
public final class R { | |||
public static final class color { | |||
public static final int black=0x7f010000; | |||
public static final int blue=0x7f010001; | |||
public static final int gray=0x7f010002; | |||
public static final int green=0x7f010003; | |||
public static final int skyblue=0x7f010004; | |||
public static final int white=0x7f010005; | |||
} | |||
public static final class dimen { | |||
public static final int activity_horizontal_margin=0x7f020000; | |||
public static final int activity_vertical_margin=0x7f020001; | |||
} | |||
public static final class drawable { | |||
public static final int back_bt=0x7f030000; | |||
public static final int background=0x7f030001; | |||
public static final int bg_canyin=0x7f030002; | |||
public static final int bgbg=0x7f030003; | |||
public static final int btn_complete_bg_selector=0x7f030004; | |||
public static final int btn_complete_enabled_color=0x7f030005; | |||
public static final int btn_disabled_color=0x7f030006; | |||
public static final int btn_reprint_bg_selector=0x7f030007; | |||
public static final int btn_reprint_enabled_color=0x7f030008; | |||
public static final int btn_text_selector=0x7f030009; | |||
public static final int head_bg=0x7f03000a; | |||
public static final int hint=0x7f03000b; | |||
public static final int ic_launcher=0x7f03000c; | |||
public static final int mispos_hint=0x7f03000d; | |||
public static final int neu_fin_hint=0x7f03000e; | |||
} | |||
public static final class id { | |||
public static final int bt_ok=0x7f040000; | |||
public static final int bt_reprint=0x7f040001; | |||
public static final int bt_retry=0x7f040002; | |||
public static final int imgBt_back=0x7f040003; | |||
public static final int iv_hint=0x7f040004; | |||
public static final int rl_body=0x7f040005; | |||
public static final int rl_head=0x7f040006; | |||
public static final int tv_content=0x7f040007; | |||
public static final int tv_countdown=0x7f040008; | |||
public static final int tv_title=0x7f040009; | |||
} | |||
public static final class layout { | |||
public static final int activity_payment=0x7f050000; | |||
public static final int activity_sign_in=0x7f050001; | |||
} | |||
public static final class string { | |||
public static final int app_name=0x7f060000; | |||
public static final int batch_no=0x7f060001; | |||
public static final int card_amount=0x7f060002; | |||
public static final int card_issuer=0x7f060003; | |||
public static final int card_no=0x7f060004; | |||
public static final int cashier=0x7f060005; | |||
public static final int check_balance_hint=0x7f060006; | |||
public static final int customer_name=0x7f060007; | |||
public static final int device_no=0x7f060008; | |||
public static final int drawback=0x7f060009; | |||
public static final int drawback_slip=0x7f06000a; | |||
public static final int former_slip=0x7f06000b; | |||
public static final int goods_name=0x7f06000c; | |||
public static final int goods_num=0x7f06000d; | |||
public static final int goods_sum=0x7f06000e; | |||
public static final int goods_unit_cost=0x7f06000f; | |||
public static final int hint_title=0x7f060010; | |||
public static final int init=0x7f060011; | |||
public static final int login=0x7f060012; | |||
public static final int merchant_al=0x7f060013; | |||
public static final int merchant_no=0x7f060014; | |||
public static final int ok=0x7f060015; | |||
public static final int pay=0x7f060016; | |||
public static final int print_line=0x7f060017; | |||
public static final int re_print=0x7f060018; | |||
public static final int re_print_former_one=0x7f060019; | |||
public static final int re_print_hint=0x7f06001a; | |||
public static final int re_try=0x7f06001b; | |||
public static final int reference_no=0x7f06001c; | |||
public static final int sales_slip=0x7f06001d; | |||
public static final int signature=0x7f06001e; | |||
public static final int swiping_card=0x7f06001f; | |||
public static final int timeout_hint=0x7f060020; | |||
public static final int transaction_no=0x7f060021; | |||
public static final int transaction_time=0x7f060022; | |||
public static final int user_al=0x7f060023; | |||
public static final int voucher_no=0x7f060024; | |||
} | |||
public static final class style { | |||
public static final int AppBaseTheme=0x7f070000; | |||
public static final int AppTheme=0x7f070001; | |||
public static final int dialogActivity=0x7f070002; | |||
} | |||
} |
@@ -0,0 +1,79 @@ | |||
{ | |||
"logs": [ | |||
{ | |||
"outputFile": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\values_values.arsc.flat", | |||
"map": [ | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\color.xml", | |||
"from": { | |||
"startLines": "7,6,4,5,3,2", | |||
"startColumns": "1,1,1,1,1,1", | |||
"startOffsets": "295,248,153,200,102,54", | |||
"endColumns": "36,35,35,36,38,36", | |||
"endOffsets": "330,282,187,235,139,89" | |||
}, | |||
"to": { | |||
"startLines": "2,3,4,5,6,7", | |||
"startColumns": "4,4,4,4,4,4", | |||
"startOffsets": "55,95,134,173,213,255", | |||
"endColumns": "39,38,38,39,41,39", | |||
"endOffsets": "90,129,168,208,250,290" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\styles.xml", | |||
"from": { | |||
"startLines": "6,15,19", | |||
"startColumns": "4,4,4", | |||
"startOffsets": "192,525,694", | |||
"endLines": "12,17,36", | |||
"endColumns": "12,12,12", | |||
"endOffsets": "484,682,1508" | |||
}, | |||
"to": { | |||
"startLines": "47,54,57", | |||
"startColumns": "4,4,4", | |||
"startOffsets": "2073,2364,2524", | |||
"endLines": "53,56,74", | |||
"endColumns": "12,12,12", | |||
"endOffsets": "2359,2519,3321" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\strings.xml", | |||
"from": { | |||
"startLines": "3,38,45,34,33,40,5,32,39,7,23,24,41,42,44,43,9,15,4,29,35,12,6,26,10,11,18,13,37,22,46,17,16,31,30,28,36", | |||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4", | |||
"startOffsets": "56,1385,1680,1208,1169,1468,147,1124,1426,236,767,817,1508,1551,1639,1592,281,503,108,985,1253,422,201,868,323,367,643,458,1340,720,1724,598,552,1077,1029,945,1297", | |||
"endColumns": "51,40,42,44,38,39,53,44,41,39,49,45,42,40,40,46,41,48,38,43,43,35,34,71,43,54,48,39,44,46,44,44,45,46,47,39,42", | |||
"endOffsets": "103,1421,1718,1248,1203,1503,196,1164,1463,271,812,858,1546,1587,1675,1634,318,547,142,1024,1292,453,231,935,362,417,687,493,1380,762,1764,638,593,1119,1072,980,1335" | |||
}, | |||
"to": { | |||
"startLines": "10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46", | |||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4", | |||
"startOffsets": "409,461,502,545,590,629,669,723,768,810,850,900,946,989,1030,1071,1118,1160,1209,1248,1292,1336,1372,1407,1479,1523,1578,1627,1667,1712,1759,1804,1849,1895,1942,1990,2030", | |||
"endColumns": "51,40,42,44,38,39,53,44,41,39,49,45,42,40,40,46,41,48,38,43,43,35,34,71,43,54,48,39,44,46,44,44,45,46,47,39,42", | |||
"endOffsets": "456,497,540,585,624,664,718,763,805,845,895,941,984,1025,1066,1113,1155,1204,1243,1287,1331,1367,1402,1474,1518,1573,1622,1662,1707,1754,1799,1844,1890,1937,1985,2025,2068" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\dimens.xml", | |||
"from": { | |||
"startLines": "3,4", | |||
"startColumns": "4,4", | |||
"startOffsets": "92,151", | |||
"endColumns": "57,55", | |||
"endOffsets": "145,202" | |||
}, | |||
"to": { | |||
"startLines": "8,9", | |||
"startColumns": "4,4", | |||
"startOffsets": "295,353", | |||
"endColumns": "57,55", | |||
"endOffsets": "348,404" | |||
} | |||
} | |||
] | |||
} | |||
] | |||
} |
@@ -0,0 +1,79 @@ | |||
{ | |||
"logs": [ | |||
{ | |||
"outputFile": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\incremental\\mergeDebugResources\\merged.dir\\values\\values.xml", | |||
"map": [ | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\color.xml", | |||
"from": { | |||
"startLines": "7,6,4,5,3,2", | |||
"startColumns": "1,1,1,1,1,1", | |||
"startOffsets": "295,248,153,200,102,54", | |||
"endColumns": "36,35,35,36,38,36", | |||
"endOffsets": "330,282,187,235,139,89" | |||
}, | |||
"to": { | |||
"startLines": "2,3,4,5,6,7", | |||
"startColumns": "4,4,4,4,4,4", | |||
"startOffsets": "55,95,134,173,213,255", | |||
"endColumns": "39,38,38,39,41,39", | |||
"endOffsets": "90,129,168,208,250,290" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\styles.xml", | |||
"from": { | |||
"startLines": "6,15,19", | |||
"startColumns": "4,4,4", | |||
"startOffsets": "192,525,694", | |||
"endLines": "12,17,36", | |||
"endColumns": "12,12,12", | |||
"endOffsets": "484,682,1508" | |||
}, | |||
"to": { | |||
"startLines": "47,54,57", | |||
"startColumns": "4,4,4", | |||
"startOffsets": "2073,2364,2524", | |||
"endLines": "53,56,74", | |||
"endColumns": "12,12,12", | |||
"endOffsets": "2359,2519,3321" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\strings.xml", | |||
"from": { | |||
"startLines": "3,38,45,34,33,40,5,32,39,7,23,24,41,42,44,43,9,15,4,29,35,12,6,26,10,11,18,13,37,22,46,17,16,31,30,28,36", | |||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4", | |||
"startOffsets": "56,1385,1680,1208,1169,1468,147,1124,1426,236,767,817,1508,1551,1639,1592,281,503,108,985,1253,422,201,868,323,367,643,458,1340,720,1724,598,552,1077,1029,945,1297", | |||
"endColumns": "51,40,42,44,38,39,53,44,41,39,49,45,42,40,40,46,41,48,38,43,43,35,34,71,43,54,48,39,44,46,44,44,45,46,47,39,42", | |||
"endOffsets": "103,1421,1718,1248,1203,1503,196,1164,1463,271,812,858,1546,1587,1675,1634,318,547,142,1024,1292,453,231,935,362,417,687,493,1380,762,1764,638,593,1119,1072,980,1335" | |||
}, | |||
"to": { | |||
"startLines": "10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46", | |||
"startColumns": "4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4", | |||
"startOffsets": "409,461,502,545,590,629,669,723,768,810,850,900,946,989,1030,1071,1118,1160,1209,1248,1292,1336,1372,1407,1479,1523,1578,1627,1667,1712,1759,1804,1849,1895,1942,1990,2030", | |||
"endColumns": "51,40,42,44,38,39,53,44,41,39,49,45,42,40,40,46,41,48,38,43,43,35,34,71,43,54,48,39,44,46,44,44,45,46,47,39,42", | |||
"endOffsets": "456,497,540,585,624,664,718,763,805,845,895,941,984,1025,1066,1113,1155,1204,1243,1287,1331,1367,1402,1474,1518,1573,1622,1662,1707,1754,1799,1844,1890,1937,1985,2025,2068" | |||
} | |||
}, | |||
{ | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\values\\dimens.xml", | |||
"from": { | |||
"startLines": "3,4", | |||
"startColumns": "4,4", | |||
"startOffsets": "92,151", | |||
"endColumns": "57,55", | |||
"endOffsets": "145,202" | |||
}, | |||
"to": { | |||
"startLines": "8,9", | |||
"startColumns": "4,4", | |||
"startOffsets": "295,353", | |||
"endColumns": "57,55", | |||
"endOffsets": "348,404" | |||
} | |||
} | |||
] | |||
} | |||
] | |||
} |
@@ -0,0 +1,82 @@ | |||
[ | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_disabled_color.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_disabled_color.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_mispos_hint.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\mispos_hint.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_complete_enabled_color.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_complete_enabled_color.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_text_selector.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_text_selector.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-xxhdpi_ic_launcher.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-xxhdpi\\ic_launcher.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_bg_canyin.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\bg_canyin.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\layout_activity_payment.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\layout\\activity_payment.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_hint.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\hint.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-hdpi_ic_launcher.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-hdpi\\ic_launcher.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\layout_activity_sign_in.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\layout\\activity_sign_in.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_bgbg.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\bgbg.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_reprint_enabled_color.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_reprint_enabled_color.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_reprint_bg_selector.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_reprint_bg_selector.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_head_bg.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\head_bg.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_neu_fin_hint.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\neu_fin_hint.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable_btn_complete_bg_selector.xml.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable\\btn_complete_bg_selector.xml" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-xhdpi_ic_launcher.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-xhdpi\\ic_launcher.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_background.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\background.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_back_bt.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\back_bt.png" | |||
}, | |||
{ | |||
"merged": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\build\\intermediates\\res\\merged\\debug\\drawable-mdpi_ic_launcher.png.flat", | |||
"source": "D:\\Fumao\\app sourceCode\\UmsipsBusiness_ICBChandheld_AS\\UmsipsBussiness\\src\\main\\res\\drawable-mdpi\\ic_launcher.png" | |||
} | |||
] |
@@ -0,0 +1,99 @@ | |||
<?xml version="1.0" encoding="utf-8"?> | |||
<instant-run | |||
abi="armeabi-v7a,armeabi" | |||
api-level="22" | |||
build-mode="FULL" | |||
density="xhdpi" | |||
format="10" | |||
plugin-version="3.0.1" | |||
timestamp="1570518452594" | |||
token="98581791029416848" | |||
verifier="FULL_BUILD_REQUESTED" > | |||
<task | |||
name="javac" | |||
duration="3435" /> | |||
<task | |||
name="instant-run-dex" | |||
duration="0" /> | |||
<task | |||
name="instant-run-transform" | |||
duration="297" /> | |||
<task | |||
name="verifier" | |||
duration="154" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_7.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\outputs\apk\debug\UmsipsBussiness-debug.apk" | |||
type="SPLIT_MAIN" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_6.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_0.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_5.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_1.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_4.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_2.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_3.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_9.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_8.apk" | |||
type="SPLIT" /> | |||
<build | |||
build-mode="FULL" | |||
timestamp="1570518452594" | |||
verifier="FULL_BUILD_REQUESTED" > | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_7.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\outputs\apk\debug\UmsipsBussiness-debug.apk" | |||
type="SPLIT_MAIN" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_6.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_0.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_5.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_1.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_4.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_2.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_3.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_9.apk" | |||
type="SPLIT" /> | |||
<artifact | |||
location="D:\fumao\UmsipsBusiness_AS\UmsipsBussiness\build\intermediates\split-apk\debug\slices\slice_8.apk" | |||
type="SPLIT" /> | |||
</build> | |||
</instant-run> |