consenlabs / token-core-android

a blockchain private key management library on android
Apache License 2.0
648 stars 198 forks source link

获取当前身份一直报错 #37

Closed lvshtwl closed 5 years ago

lvshtwl commented 5 years ago

com.fasterxml.jackson.databind.exc.InvalidTypeIdException: Missing type id when trying to resolve subtype of [simple type, class org.consenlabs.tokencore.foundation.crypto.Crypto]: missing type id property 'kdf' (for POJO property 'crypto') at [Source: (File); line: 1, column: 306] (through reference chain: org.consenlabs.tokencore.wallet.keystore.IdentityKeystore["crypto"])

lvshtwl commented 5 years ago

出现流程。退出app,再进去,获取getCurrentIdentity方法

lvshtwl commented 5 years ago

{ "crypto": { "cipherparams": { "iv": "0b87bf14275bb4ec3fa058afb25f7f9c" }, "ciphertext": "350a97c8beeb89870d2da27dbac089b20dc645d102d40cef46ea2de6784d01175039666f65f26975b45c66a07e77c47657dc1e926a83b383741ec6b47fa8c500de36588e81ad5409409f58b15cc836d2779fe746d745806c89f77e6208a698e9d64cf6d98ecb17e28ee19d06b36912" }, "id": "5bc5d543-f7d1-4ee0-a053-1231ca0d536a", "encMnemonic": { "encStr": "9216f30addaa2dca8fe91be0c7cbaa6867407265a604894f2612eb7a847c74149d368a4c5bf0fc72f0f1598b43640d9cd09aef10e2277a89cc6f5371c03b80f40649d9393d9739", "nonce": "c2950452103388552dce3bc01bc6ea78" }, "walletIDs": ["75174348-5dc5-46c3-a9d3-e013746e66c7", "ed52bd32-32f2-4f0b-ba1d-28a6c93121bc"], "imTokenMeta": { "network": "MAINNET", "passwordHint": "", "source": "NEW_IDENTITY", "timestamp": 1545205714 } }

lvshtwl commented 5 years ago

找到问题了。。。是混淆的问题。你们用了jackson 和bit的sdk。要remine加混淆

ganshenml commented 5 years ago

找到问题了。。。是混淆的问题。你们用了jackson 和bit的sdk。要remine加混淆

我能看下你这块的混淆代码不?因为我这边混淆开启后会报错: mnemonic_checksum_invalid

创建钱包都是失败的。

lvshtwl commented 5 years ago

-keep class org.consenlabs.tokencore.* {;}

jackson相关

-dontwarn com.fasterxml.jackson. #告诉编译器fastjson打包过程中不要提示警告 -keep class com.fasterxml.jackson. { ; } #jackson包下的所有类不要混淆,包括类里面的方法 -keepattributes Signature #这行一定要加上,否则你的object中含有其他对象的字段的时候会抛出ClassCastException -dontpreverify -dontwarn -dontnote -verbose -keepattributes Signature,Annotation,EnclosingMethod* -keep class org.codehaus.* { ; } -keepnames class com.fasterxml.jackson.* { ; } -keepclassmembers public final enum org.codehaus.jackson.annotate.JsonAutoDetect$Visibility { public static final org.codehaus.jackson.annotate.JsonAutoDetect$Visibility *; }

-keep,includedescriptorclasses class org.bitcoinj.wallet.Protos$ { *; } -keepclassmembers class org.bitcoinj.wallet.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; } -keep,includedescriptorclasses class org.bitcoin.protocols.payments.Protos$* { ; } -keepclassmembers class org.bitcoin.protocols.payments.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; } -dontwarn org.bitcoinj.store.WindowsMMapHack -dontwarn org.bitcoinj.store.LevelDBBlockStore -dontnote org.bitcoinj.crypto.DRMWorkaround -dontnote org.bitcoinj.crypto.TrustStoreLoader$DefaultTrustStoreLoader -dontnote com.subgraph.orchid.crypto.PRNGFixes -dontwarn okio.DeflaterSink -dontwarn okio.Okio -dontnote com.squareup.okhttp.internal.Platform -dontwarn org.bitcoinj.store.LevelDBFullPrunedBlockStore

-keepnames class com.fasterxml.jackson. { *; } -keepnames interface com.fasterxml.jackson.* { ; } -dontwarn com.fasterxml.jackson.databind.

ganshenml commented 5 years ago

-keep class org.consenlabs.tokencore.* {;}

jackson相关

-dontwarn com.fasterxml.jackson. #告诉编译器fastjson打包过程中不要提示警告 -keep class com.fasterxml.jackson. { _; } #jackson包下的所有类不要混淆,包括类里面的方法 -keepattributes Signature #这行一定要加上,否则你的object中含有其他对象的字段的时候会抛出ClassCastException -dontpreverify -dontwarn -dontnote -verbose -keepattributes Signature,Annotation,EnclosingMethod -keep class org.codehaus.* { ; } -keepnames class com.fasterxml.jackson._ { ; } -keepclassmembers public final enum org.codehaus.jackson.annotate.JsonAutoDetect$Visibility { public static final org.codehaus.jackson.annotate.JsonAutoDetect$Visibility *; }

-keep,includedescriptorclasses class org.bitcoinj.wallet.Protos$* { ; } -keepclassmembers class org.bitcoinj.wallet.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; } -keep,includedescriptorclasses class org.bitcoin.protocols.payments.Protos$ { ; } -keepclassmembers class org.bitcoin.protocols.payments.Protos { com.google.protobuf.Descriptors$FileDescriptor descriptor; } -dontwarn org.bitcoinj.store.WindowsMMapHack -dontwarn org.bitcoinj.store.LevelDBBlockStore -dontnote org.bitcoinj.crypto.DRMWorkaround -dontnote org.bitcoinj.crypto.TrustStoreLoader$DefaultTrustStoreLoader -dontnote com.subgraph.orchid.crypto.PRNGFixes -dontwarn okio.DeflaterSink -dontwarn okio.Okio -dontnote com.squareup.okhttp.internal.Platform -dontwarn org.bitcoinj.store.LevelDBFullPrunedBlockStore*

-keepnames class com.fasterxml.jackson.* { ; } -keepnames interface com.fasterxml.jackson. { ; } -dontwarn com.fasterxml.jackson.databind.*

感谢感谢。

XuNeal commented 5 years ago

This issue will be closed as it has not update for a long time. You can reopen it if you have any other problem