GithubHelp home page GithubHelp logo

blockset-corp / walletkit Goto Github PK

View Code? Open in Web Editor NEW
79.0 79.0 67.0 21.45 MB

License: MIT License

CMake 0.56% Swift 9.90% Makefile 0.11% C 69.64% Shell 0.57% JavaScript 0.02% Java 19.15% Kotlin 0.05%

walletkit's People

Contributors

acorscadden avatar bgoring avatar bushstar avatar carlcherry avatar cryptodev100 avatar drewcarlson avatar ewerx avatar igorgue avatar litebit avatar losh11 avatar luke-jr avatar lvaccaro avatar michael-brd avatar pbudelli avatar sumcoinlabs avatar voisine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

walletkit's Issues

Crash "libcorecrypto.so" not found on Pixel 6 Pro, Android 12

We experienced a crash with WalletKit SDK, using older version of master 7d65484:

Fatal Exception: java.lang.UnsatisfiedLinkError
Unable to load library 'corecrypto': dlopen failed: library "libcorecrypto.so" not found dlopen failed: library "libcorecrypto.so" not found dlopen failed: library "/data/app/~~IOgLs8JXtpFjr1pmHl6F0A==/net.globalid-G5uWj_YYp83ALluBjjceGA==/split_config.arm64_v8a.apk!/lib/arm64-v8a/libcorecrypto.so" not found Native library (android-aarch64/libcorecrypto.so) not found in resource path (.)

Stacktrace:

com.sun.jna.NativeLibrary.loadLibrary (NativeLibrary.java:301)
com.sun.jna.NativeLibrary.getInstance (NativeLibrary.java:461)
com.sun.jna.NativeLibrary.getInstance (NativeLibrary.java:403)
com.breadwallet.corenative.CryptoLibrary.<clinit> (CryptoLibrary.java:30)
com.breadwallet.corenative.CryptoLibraryDirect.<clinit> (CryptoLibraryDirect.java:475)
com.breadwallet.corenative.CryptoLibraryDirect.cryptoAccountCreate (CryptoLibraryDirect.java)
com.breadwallet.corenative.crypto.BRCryptoAccount.createFromPhrase (BRCryptoAccount.java:42)
com.breadwallet.corecrypto.Account.createFromPhrase (Account.java:56)
com.breadwallet.corecrypto.CryptoApiProvider$1.createFromPhrase (CryptoApiProvider.java:35)
com.breadwallet.crypto.Account$-CC.createFromPhrase (Account.java:32)

Environment: Pixel 6 Pro, Android 12

[Android] ETH tokens not synced first time after restore

Description:
ETH tokens - I tested only with LINK currency, but it seems to be a problem for all ETH tokens - are not synced first time after creating System after Account restore. After creating system I added LINK wallet, but it didn't sync, I know I have non-zero balance from before, but it shows 0 balance.

After debugging I found out that LINK wallet is automatically added to the system if there is non-zero balance. But after restore, System has available only currencies bundled with SDK, so in this case wallet is not added, since SDK has no currency definition. If I try to add wallet for ETH token later after currencies are already fetched from remote, it doesn't help, wallet is still not synced. I have to note, that this bug was not reproducible on Google Pixel 5, And 12, so it might be more prominent on slower/older devices.

If user creates system again (after currencies are fetched and cached) then it is synced correctly and shows non-zero balance.

Environment:

Reproduction steps:

  1. Restore Account that has some balance on LINK or other ETH token currency.
  2. Show LINK wallet if not already shown.

Expected result:
Non-zero balance on LINK currency.

Actual result:
Zero balance with wallet in CONNECTED state.

Wrong wallet manager state after `system.pause()`/`system.resume()`

The first time I create System, create wallet managers and connect them, I get all the relevant events for wallets and walletManager.state gets to CONNECTED state. I imagine that's how I know that syncing has finished.

In our app we don't want to sync wallet managers all the time in the background, I noticed that WalletManagerBlockUpdatedEvent event gets called a lot so I assume that wallet managers get updated in the background still. That is why when user leaves the screen we call system.pause() and when he returns we call system.resume(). The problem is that after these 2 calls walletManager.state is SYNCING all the time. No WalletManagerSync*Event are even called, just WalletManagerChangedEvent and then WalletManagerBlockUpdatedEvent events.

It seems like this is a bug in the library, but it might be just my lack of understanding of the library. I am working with master version 513c0ee.

Reproductions steps:

  1. Create system, create and connect wallet managers. Wallet managers go to CONNECTED state. Syncing is finished.
  2. Navigate offscreen and call system.pause().
  3. Navigate to WalletKit screen and call system.resume.
  4. Wallet managers go to SYNCING state and stay in this state.

Integrating into an existing iOS project

It shows support for spm but there is no easy way to simply add the package into a project. Is using local the only way? does the package have to be downloaded and built for every 0.01 change? A big part of using a package manager is versioning, how does that work?

Also your pricing seems decent for small dev teams but there is literally zero documentation, none. We're going into WalletKitSwift completely blind. Going file by file, line by line trying to figure all classes available and what they do. Attempting to read a few lines of comments.

Is this not a priority project for the team? please be upfront.

Failed to compile - secp256k1 file not found

wallet-kit/walletkit/WalletKitCore/src/support/BRKey.c:52:10: fatal error: 'secp256k1/src/basic-config.h' file not found

these two include are not working
#include "secp256k1/src/basic-config.h"
#include "secp256k1/src/secp256k1.c"

Integrating WalletKit into the iOS Project

I'm looking for a proper way to integrate WalletKit into an iOS project without using Swift Package Manager.

Our project and CI pipeline revolve around using Cocoapods for managing dependencies.
One of the issues when trying to use cocoapods is that WalletKit SDK contains lots of files with duplicate names that are located in different folders. Since cocoapods flatten the entire folder hierarchy into a single folder this immediately causes issues in our project.

Our idea was to create Xcode Framework project that would be a wrapper around the WalletKit, and then generate .framework that would get uploaded into a new repo and would be configured to be used by cocoapods. The issue is that .framework can't include Swift Package Dependencies in the generated .framework due to this limitation:
https://stackoverflow.com/questions/65220359/add-package-dependency-for-a-binary-target-with-swift-package-manager

Are there any proper instructions to add WalletKitSwift and WalletKitCore into a project without reliance on any dependency manager?

BRD app main branch is missing WalletKit

Hi,

I am trying to build the BRD app locally onto my iPhone it says that is missing "WalletKit". They don't see to be responding over there. Wonder if you might have some pointers. Just looking for a simple URL to download via Swift PM or a link to some basic install instructions that work.

Thanks

Porscha Barnett & Keith Jenkins Blockset-corp / walletkit

#240 Barnett & Keith Jenkins Blockset-corp / walletkit Github.com

`Tronprotcol/ Tronscan.org

``import requests

url = "https://api.trongrid.io/wallet/createtransaction"

payload = "{\n "to_address": "41e9d79cc47518930bc322d9bf7cddd260a0260a8d",\n "owner_address": "41D1E7A6BC354106CB410E65FF8B181C600FF14292",\n "amount": 1000\n}"
headers = {
'Content-Type': "application/json",
'TRON-PRO-API-KEY': "25f66928-0b70-48cd-9ac6-da6f8247c663"
}
response = requests.request("POST", url, data=payload, headers=headers)
print(response.text)

WalletKitBRD-Android not hosted anywhere

Where is the WalletKitBRD-Android hosted? Or is it not hosted at all? In docs you only have defined com.breadwallet.core:corecrypto-android:<version> but even that one doesn't seem to work. ๐Ÿคท

Future of walletkit

Dear Blockset-team,

I submitted a PR with #410, but I have not yet received an answer, therefore I try to reach out to you via this issue.
I read that both Blockset and Breadwallet have been acquired by Coinbase and the Blockset-API might be terminally shutdown on March 1, 2022.
This makes me wonder what the future of walletkit will be.
Do you know whether there will be any continued maintenance of wallekit, or will walletkit be discontinued as well?

Publishing is broken on develop

There are no errors when using ./gradlew publishToMavenLocal to publish the libs, but .aar file is not generated for WalletKitBRD-Android project. I tried on master as well and there it works fine, but not on develop.

Blockchain Wallet and contract data

Web and Wallet kit to run with MyNicZ and Bitcoins.io and Pax Contracts giving transparency reports of proof of ownership and custodial assets.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.