These are two different things. SLC build process is not related to Eclipse.
java.lang.UnsatisfiedLinkError: Couldn't load pclapi: findLibrary returned null
at java.lang.Runtime.loadLibrary(Runtime.java:365)
at java.lang.System.loadLibrary(System.java:535)
at se.iqpd.checkout.plus.ISMP_Companion.Initialize(ISMP_Companion.java:133)
at se.iqpd.checkout.plus.main._activity_resume(main.java:1465)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:174)
at anywheresoftware.b4a.BA.raiseEvent(BA.java:158)
at se.iqpd.checkout.plus.main.afterFirstLayout(main.java:104)
at se.iqpd.checkout.plus.main.access$100(main.java:16)
at se.iqpd.checkout.plus.main$WaitForLayout.run(main.java:76)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4514)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)
** Activity (main) Resume **
Yes.
You will need to copy it to File.DirInternal and then load it. You can get this folder in your Java code by calling anywheresoftware.b4a.objects.streams.File.getDirInternal.
You will need to copy it to File.DirInternal and then load it. You can get this folder in your Java code by calling anywheresoftware.b4a.objects.streams.File.getDirInternal.
Use PclService.apk
1. Create a package com.ingenico.pclservice in the src/ directory of your project
2. Copy the aidl files from %Add-on_Dir%\Android\SDK\ to the previously created package to be able to use the PclService features:
IPclService.aidl
IPclServiceCallback.aidl
TransactionIn.aidl
TransactionOut.aidl
3. Copy file %Add-on_Dir%\Android\SDK\Transaction.jar in the libs/ directory of the project and add it to the Java Build Path as an external library
public class YourActivity extends Activity {
// Declare IPclService interface
protected IPclService mPclService = null;
// Declare Serviceconnection
private PclServiceConnection mServiceConnection;
// Implement ServiceConnection
class PclServiceConnection implements ServiceConnection
{
public void onServiceConnected(ComponentName className, IBinder boundService )
{
mPclService = IPclService.Stub.asInterface((IBinder)boundService);
}
public void onServiceDisconnected(ComponentName className)
{
mPclService = null;
}
};
// You can call this method in onCreate for instance to bind to
// the service
private void initService()
{ mServiceConnection = new PclServiceConnection();
Intent i = new Intent();
i.setClassName( "com.ingenico.pclservice",
"com.ingenico.pclservice.PclService" );
getApplicationContext().bindService( i, this.mServiceConnection,
Context.BIND_AUTO_CREATE);
}
// You can call this method in onDestroy for instance to unbind
// from the service
private void releaseService()
{
getApplicationContext().unbindService( this.mServiceConnection);
}
};
You will need a have a good understanding of Android Java API in order to build this library.
It is hard to say. If you can build a Java app then you can also build a library and use it from B4A. However if it is easier for you then it can work.A other option is maybe to build a app in java and call it from B4A and get a return value from that intent? Do you think that is a better option?
I will be here next week. However I'm unable to provide private technical support.
I will be here next week. However I'm unable to provide private technical support.
It is hard to say. If you can build a Java app then you can also build a library and use it from B4A. However if it is easier for you then it can work.
#Extends: SDKActivities.Activity
public class main extends TooleapActivities.Activity implements B4AActivity {
You can use this attribute to change the activity parent. Make sure to set the full package name.
processBA = new BA(this.getApplicationContext(), null, null, "se.iqpd.checkout.plus", "se.iqpd.checkout.plus.main");
processBA.loadHtSubs(this.getClass());
Intent i = new Intent();
i.setClassName( "com.ingenico.pclservice","com.ingenico.pclservice.PclService" );
processBA.context.bindService(i, this.mServiceConnection,Context.BIND_AUTO_CREATE) // <----- This is the modification
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?