hodlwallet / hodl-wallet-android

HODL Wallet : Bitcoin Android Wallet
https://hodlwallet.com
MIT License
10 stars 14 forks source link

Releases at Github #52

Open IzzySoft opened 4 years ago

IzzySoft commented 4 years ago

It looks like you've stopped tagging and providing the APK here at Github a while ago: the last version available here is v2, while at Play there is v3.3.5. Could you pick up releasing here again, so folks without Play can use up-to-date versions? Thanks!

igorgue commented 3 years ago

Hello, sorry for answering until now, the latest release is master is this related to some package manager? I was not the person who released the v2 that's in here either, I suppose I can get back to that practice if there's another release.

We're busy at work with HodlWallet v2 (actual v2 not the android version) which will bring the iOS and Android projects together and will use Electrum to sync due to the deprecation of SPV.

I'm not sure when I can get to this to be honest, due to just building this app will make me invest some time fixing compilation errors with the latest toolkit.

I see there's also a request on the iOS project for this https://github.com/hodlwallet/hodl-wallet-ios/issues/74

Hope it's understandable that this project will become deprecated really soon.

emanuelb commented 3 years ago

The android app can be built without changes, see 2 Containerfiles I wrote in: https://gitlab.com/walletscrutiny/walletScrutinyCom/-/issues/193 folks want to download apks not from google-play, which require the apk to exists on provider website or in github releases.

igorgue commented 3 years ago

To me trying to build with the current tooling does the following:

  FAILED: ../../../../build/intermediates/cmake/hodlRelease/obj/armeabi-v7a/libcore-lib.so 
  : && /Users/igor/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang --target=armv7-none-linux-androideabi23 --gcc-toolchain=/Users/igor/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64 --sysroot=/Users/igor/Library/Android/sdk/ndk-bundle/toolchains/llvm/prebuilt/darwin-x86_64/sysroot -fPIC -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security -DBITCOIN_TESTNET=0 -DANDROID_STL=gnustl_static -DANDROID_TOOLCHAIN=clang -Oz -DNDEBUG  -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libgcc_real.a -Wl,--exclude-libs,libatomic.a -static-libstdc++ -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--fatal-warnings -Wl,--exclude-libs,libunwind.a -Wl,--no-undefined -Qunused-arguments -shared -Wl,-soname,libcore-lib.so -o ../../../../build/intermediates/cmake/hodlRelease/obj/armeabi-v7a/libcore-lib.so CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRAddress.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBase58.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBech32.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBIP32Sequence.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBIP38Key.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBIP39Mnemonic.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRBloomFilter.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRCrypto.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRKey.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRMerkleBlock.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRPaymentProtocol.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRPeer.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRPeerManager.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRSet.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRTransaction.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/BRWallet.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/core.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/JNIBase58.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/JNIBIP32Sequence.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/JNIKey.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/PeerManager.c.o CMakeFiles/core-lib.dir/src/main/jni/transition/wallet.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/BRCoreJni.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreJniReference.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreAddress.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreChainParams.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePeer.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreMasterPubKey.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreKey.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreMerkleBlock.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePeerManager.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransactionInput.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransactionOutput.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c.o CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreWallet.c.o  -landroid -llog -latomic -lm && :
  ld: error: duplicate symbol: transactionInputClass
  >>> defined at co_hodlwallet_core_BRCoreTransaction.c:33 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c:33)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c.o:(transactionInputClass)
  >>> defined at co_hodlwallet_core_BRCorePaymentProtocol.c:35 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c:35)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c.o:(.bss.transactionInputClass+0x0)

  ld: error: duplicate symbol: transactionInputConstructor
  >>> defined at co_hodlwallet_core_BRCoreTransaction.c:34 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c:34)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c.o:(transactionInputConstructor)
  >>> defined at co_hodlwallet_core_BRCorePaymentProtocol.c:36 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c:36)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c.o:(.bss.transactionInputConstructor+0x0)

  ld: error: duplicate symbol: transactionOutputClass
  >>> defined at co_hodlwallet_core_BRCoreTransaction.c:36 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c:36)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c.o:(transactionOutputClass)
  >>> defined at co_hodlwallet_core_BRCorePaymentProtocol.c:38 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c:38)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c.o:(.bss.transactionOutputClass+0x0)

  ld: error: duplicate symbol: transactionOutputConstructor
  >>> defined at co_hodlwallet_core_BRCoreTransaction.c:37 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c:37)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCoreTransaction.c.o:(transactionOutputConstructor)
  >>> defined at co_hodlwallet_core_BRCorePaymentProtocol.c:39 (../../../../src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c:39)
  >>>            CMakeFiles/core-lib.dir/src/main/jni/breadwallet-core/Java/co_hodlwallet_core_BRCorePaymentProtocol.c.o:(.bss.transactionOutputConstructor+0x0)
  clang: error: linker command failed with exit code 1 (use -v to see invocation)
  ninja: build stopped: subcommand failed.
igorgue commented 3 years ago

I was able to build it, but this is the new diff on the breadwallet-core library...

diff --git a/Java/co_hodlwallet_core_BRCorePaymentProtocol.c b/Java/co_hodlwallet_core_BRCorePaymentProtocol.c
index 2bc284a..9ac798e 100644
--- a/Java/co_hodlwallet_core_BRCorePaymentProtocol.c
+++ b/Java/co_hodlwallet_core_BRCorePaymentProtocol.c
@@ -29,39 +29,39 @@
 //
 // Statically Initialize Java References
 //
-jclass transactionClass;
-jmethodID transactionConstructor;
+jclass transactionClassPaymentProtocol;
+jmethodID transactionConstructorPaymentProtocol;

-jclass transactionInputClass;
-jmethodID transactionInputConstructor;
+jclass transactionInputClassPaymentProtocol;
+jmethodID transactionInputConstructorPaymentProtocol;

-jclass transactionOutputClass;
-jmethodID transactionOutputConstructor;
+jclass transactionOutputClassPaymentProtocol;
+jmethodID transactionOutputConstructorPaymentProtocol;

 static void commonStaticInitialize(JNIEnv *env) {
     //
-    transactionClass = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransaction");
-    assert (NULL != transactionClass);
-    transactionClass = (*env)->NewGlobalRef(env, transactionClass);
+    transactionClassPaymentProtocol = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransaction");
+    assert (NULL != transactionClassPaymentProtocol);
+    transactionClassPaymentProtocol = (*env)->NewGlobalRef(env, transactionClassPaymentProtocol);

-    transactionConstructor = (*env)->GetMethodID(env, transactionClass, "<init>", "(J)V");
-    assert (NULL != transactionConstructor);
+    transactionConstructorPaymentProtocol = (*env)->GetMethodID(env, transactionClassPaymentProtocol, "<init>", "(J)V");
+    assert (NULL != transactionConstructorPaymentProtocol);

     //
-    transactionInputClass = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransactionInput");
-    assert (NULL != transactionInputClass);
-    transactionInputClass = (*env)->NewGlobalRef(env, transactionInputClass);
+    transactionInputClassPaymentProtocol = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransactionInput");
+    assert (NULL != transactionInputClassPaymentProtocol);
+    transactionInputClassPaymentProtocol = (*env)->NewGlobalRef(env, transactionInputClassPaymentProtocol);

-    transactionInputConstructor = (*env)->GetMethodID(env, transactionInputClass, "<init>", "(J)V");
-    assert (NULL != transactionInputConstructor);
+    transactionInputConstructorPaymentProtocol = (*env)->GetMethodID(env, transactionInputClassPaymentProtocol, "<init>", "(J)V");
+    assert (NULL != transactionInputConstructorPaymentProtocol);

     //
-    transactionOutputClass = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransactionOutput");
-    assert(NULL != transactionOutputClass);
-    transactionOutputClass = (*env)->NewGlobalRef(env, transactionOutputClass);
+    transactionOutputClassPaymentProtocol = (*env)->FindClass(env, "co/hodlwallet/core/BRCoreTransactionOutput");
+    assert(NULL != transactionOutputClassPaymentProtocol);
+    transactionOutputClassPaymentProtocol = (*env)->NewGlobalRef(env, transactionOutputClassPaymentProtocol);

-    transactionOutputConstructor = (*env)->GetMethodID(env, transactionOutputClass, "<init>", "(J)V");
-    assert (NULL != transactionOutputConstructor);
+    transactionOutputConstructorPaymentProtocol = (*env)->GetMethodID(env, transactionOutputClassPaymentProtocol, "<init>", "(J)V");
+    assert (NULL != transactionOutputConstructorPaymentProtocol);
 }

 // ======================
@@ -96,13 +96,13 @@ Java_co_hodlwallet_core_BRCorePaymentProtocolRequest_getOutputs

     size_t outputCount = request->details->outCount;

-    jobjectArray outputs = (*env)->NewObjectArray (env, outputCount, transactionOutputClass, 0);
+    jobjectArray outputs = (*env)->NewObjectArray (env, outputCount, transactionOutputClassPaymentProtocol, 0);

     for (int i = 0; i < outputCount; i++) {
         BRTxOutput *output = (BRTxOutput *) calloc (1, sizeof (BRTxOutput));
         transactionOutputCopy (output, &request->details->outputs[i]);

-        jobject outputObject = (*env)->NewObject (env, transactionOutputClass, transactionOutputConstructor, (jlong) output);
+        jobject outputObject = (*env)->NewObject (env, transactionOutputClassPaymentProtocol, transactionOutputConstructorPaymentProtocol, (jlong) output);
         (*env)->SetObjectArrayElement (env, outputs, i, outputObject);

         (*env)->DeleteLocalRef (env, outputObject);
@@ -393,12 +393,12 @@ Java_co_hodlwallet_core_BRCorePaymentProtocolPayment_getTransactions

     size_t objectCount = payment->txCount;

-    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionClass, 0);
+    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionClassPaymentProtocol, 0);

     for (int i = 0; i < objectCount; i++) {
         BRTransaction *transaction = BRTransactionCopy (payment->transactions[i]);

-        jobject object = (*env)->NewObject (env, transactionClass, transactionConstructor, (jlong) transaction);
+        jobject object = (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol, (jlong) transaction);
         (*env)->SetObjectArrayElement (env, objects, i, object);

         (*env)->DeleteLocalRef (env, object);
@@ -420,13 +420,13 @@ Java_co_hodlwallet_core_BRCorePaymentProtocolPayment_getRefundTo

     size_t objectCount = payment->refundToCount;

-    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionOutputClass, 0);
+    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionOutputClassPaymentProtocol, 0);

     for (int i = 0; i < objectCount; i++) {
         BRTxOutput *target = (BRTxOutput *) calloc (1, sizeof (BRTxOutput));
         transactionOutputCopy (target, &payment->refundTo[i]);

-        jobject object = (*env)->NewObject (env, transactionOutputClass, transactionOutputConstructor, (jlong) target);
+        jobject object = (*env)->NewObject (env, transactionOutputClassPaymentProtocol, transactionOutputConstructorPaymentProtocol, (jlong) target);
         (*env)->SetObjectArrayElement (env, objects, i, object);

         (*env)->DeleteLocalRef (env, object);
@@ -550,12 +550,12 @@ Java_co_hodlwallet_core_BRCorePaymentProtocolACK_getTransactions

     size_t objectCount = payment->txCount;

-    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionClass, 0);
+    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionClassPaymentProtocol, 0);

     for (int i = 0; i < objectCount; i++) {
         BRTransaction *transaction = BRTransactionCopy (payment->transactions[i]);

-        jobject object = (*env)->NewObject (env, transactionClass, transactionConstructor, (jlong) transaction);
+        jobject object = (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol, (jlong) transaction);
         (*env)->SetObjectArrayElement (env, objects, i, object);

         (*env)->DeleteLocalRef (env, object);
@@ -577,13 +577,13 @@ Java_co_hodlwallet_core_BRCorePaymentProtocolACK_getRefundTo

     size_t objectCount = payment->refundToCount;

-    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionOutputClass, 0);
+    jobjectArray objects = (*env)->NewObjectArray (env, objectCount, transactionOutputClassPaymentProtocol, 0);

     for (int i = 0; i < objectCount; i++) {
         BRTxOutput *target = (BRTxOutput *) calloc (1, sizeof (BRTxOutput));
         transactionOutputCopy (target, &payment->refundTo[i]);

-        jobject object = (*env)->NewObject (env, transactionOutputClass, transactionOutputConstructor, (jlong) target);
+        jobject object = (*env)->NewObject (env, transactionOutputClassPaymentProtocol, transactionOutputConstructorPaymentProtocol, (jlong) target);
         (*env)->SetObjectArrayElement (env, objects, i, object);

         (*env)->DeleteLocalRef (env, object);
diff --git a/Java/co_hodlwallet_core_BRCoreWallet.c b/Java/co_hodlwallet_core_BRCoreWallet.c
index cc90895..fee819f 100644
--- a/Java/co_hodlwallet_core_BRCoreWallet.c
+++ b/Java/co_hodlwallet_core_BRCoreWallet.c
@@ -57,8 +57,8 @@ static void txDeleted(void *info, UInt256 txHash, int notifyUser, int recommendR
 static jclass addressClass;
 static jmethodID addressConstructor;

-static jclass transactionClass;
-static jmethodID transactionConstructor;
+static jclass transactionClassPaymentProtocol;
+static jmethodID transactionConstructorPaymentProtocol;

 /*
@@ -223,13 +223,13 @@ Java_co_hodlwallet_core_BRCoreWallet_jniGetTransactions
     BRTransaction **transactions = (BRTransaction **) calloc (transactionCount, sizeof (BRTransaction *));
     transactionCount = BRWalletTransactions (wallet, transactions, transactionCount);

-    jobjectArray transactionArray = (*env)->NewObjectArray (env, transactionCount, transactionClass, 0);
+    jobjectArray transactionArray = (*env)->NewObjectArray (env, transactionCount, transactionClassPaymentProtocol, 0);

     // TODO: Decide if copy is okay; if not, be sure to mark 'isRegistered = true'
     //   We should not copy; but we need to deal with wallet-initiated 'free'
     for (int index = 0; index < transactionCount; index++) {
         jobject transactionObject =
-            (*env)->NewObject (env, transactionClass, transactionConstructor,
+            (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol,
                                (jlong) JNI_COPY_TRANSACTION(transactions[index]));
         assert (!(*env)->IsSameObject (env, transactionObject, NULL));

@@ -256,11 +256,11 @@ Java_co_hodlwallet_core_BRCoreWallet_getTransactionsConfirmedBefore
     BRTransaction **transactions = (BRTransaction **) calloc (transactionCount, sizeof (BRTransaction *));
     BRWalletTxUnconfirmedBefore (wallet, transactions, transactionCount, blockHeight);

-    jobjectArray transactionArray = (*env)->NewObjectArray (env, transactionCount, transactionClass, 0);
+    jobjectArray transactionArray = (*env)->NewObjectArray (env, transactionCount, transactionClassPaymentProtocol, 0);

     for (int index = 0; index < transactionCount; index++) {
         jobject transactionObject =
-            (*env)->NewObject (env, transactionClass, transactionConstructor,
+            (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol,
                                (jlong) JNI_COPY_TRANSACTION(transactions[index]));

         (*env)->SetObjectArrayElement (env, transactionArray, index, transactionObject);
@@ -371,7 +371,7 @@ Java_co_hodlwallet_core_BRCoreWallet_createTransaction

     return NULL == transaction
            ? NULL
-           : (*env)->NewObject(env, transactionClass, transactionConstructor, (jlong) transaction);
+           : (*env)->NewObject(env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol, (jlong) transaction);
 }

 /*
@@ -399,7 +399,7 @@ JNIEXPORT jobject JNICALL Java_co_hodlwallet_core_BRCoreWallet_createTransaction

     return NULL == transaction
            ? NULL
-           : (*env)->NewObject(env, transactionClass, transactionConstructor, (jlong) transaction);
+           : (*env)->NewObject(env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol, (jlong) transaction);
 }

@@ -515,7 +515,7 @@ Java_co_hodlwallet_core_BRCoreWallet_jniTransactionForHash

     uint8_t *hashData = (uint8_t *) (*env)->GetByteArrayElements(env, hashByteArray, 0);

-    return (*env)->NewObject (env, transactionClass, transactionConstructor,
+    return (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol,
                               (jlong) JNI_COPY_TRANSACTION(BRWalletTransactionForHash(wallet, UInt256Get(hashData))));
 }

@@ -688,12 +688,12 @@ JNIEXPORT void JNICALL Java_co_hodlwallet_core_BRCoreWallet_initializeNative
     addressConstructor = (*env)->GetMethodID(env, addressClass, "<init>", "(J)V");
     assert (NULL != addressConstructor);

-    transactionClass = (*env)->FindClass (env, "co/hodlwallet/core/BRCoreTransaction");
-    assert (NULL != transactionClass);
-    transactionClass = (*env)->NewGlobalRef (env, transactionClass);
+    transactionClassPaymentProtocol = (*env)->FindClass (env, "co/hodlwallet/core/BRCoreTransaction");
+    assert (NULL != transactionClassPaymentProtocol);
+    transactionClassPaymentProtocol = (*env)->NewGlobalRef (env, transactionClassPaymentProtocol);

-    transactionConstructor = (*env)->GetMethodID(env, transactionClass, "<init>", "(J)V");
-    assert (NULL != transactionConstructor);
+    transactionConstructorPaymentProtocol = (*env)->GetMethodID(env, transactionClassPaymentProtocol, "<init>", "(J)V");
+    assert (NULL != transactionConstructorPaymentProtocol);
 }

 //
@@ -749,8 +749,8 @@ txAdded(void *info, BRTransaction *tx) {
     assert (NULL != listenerMethod);

     // Create the BRCoreTransaction
-    jobject transaction = (*env)->NewObject (env, transactionClass, transactionConstructor,
-                          (jlong) JNI_COPY_TRANSACTION(tx));
+    jobject transaction = (*env)->NewObject (env, transactionClassPaymentProtocol, transactionConstructorPaymentProtocol,
+                                             (jlong) JNI_COPY_TRANSACTION(tx));

     // Invoke the callback with the provided transaction
     (*env)->CallVoidMethod(env, listener,
emanuelb commented 3 years ago

Can you provide detailed steps you did in order to compile? on what environment/platform? Leo rebuild result in different libcore-lib.so at: https://gitlab.com/walletscrutiny/walletScrutinyCom/-/issues/193#note_539669190 and my recompile with alpine Container result in different file then the debian Container: https://gitlab.com/walletscrutiny/walletScrutinyCom/-/issues/193#note_541358090

igorgue commented 3 years ago

@emanuelb I compile on Android Studio on OSX there's no steps just click Run and the changes I did.