第一開始,調用KeyFactory keyf = KeyFactory.getInstance(ALGORITHM);報錯。如下:
java.security.spec.InvalidKeySpecException: java.lang.RuntimeException: error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
KeyFactory keyf = KeyFactory.getInstance(ALGORITHM, "BC"); 加入了“BC”報如下錯誤:
com.android.org.bouncycastle.jcajce.provider.asymmetric.util.ExtendedInvalidKeySpecException: unable to process key spec: java.lang.ClassCastException: com.android.org.bouncycastle.asn1.DLSequence cannot be cast to com.android.org.bouncycastle.asn1.ASN1Integer
網上普遍都是說私鑰錯了,但是我又發現另外一個問題也會報這種錯誤。
因爲我就是這種錯誤啦,,解決了一天才發現,現在我就發錯誤的地方:
錯誤是在AndroidManifest.xml裏面。
錯誤點是這個:
<activity
android:name="com.alipay.H5PayDemoActivity"
android:configChanges="orientation|keyboardHidden|navigation"
android:exported="false"
android:screenOrientation="behind" >
com.alipay.這個其實是自己的包名,但是如果你直接複製DEMO的。會是這個:com.alipay.sdk.pay.demo.H5PayDemoActivity
所以就報錯了。
就是這樣
最後我還有一個疑問。希望知道的人,可以解答我。
我那個是AndroidManifest.xml裏面出錯了。爲什麼我一個賬號是可以運行,但另外一個賬號不能運行。