0

没有棉绒标记。当通过我通过 Eclipse 插入计算机的每个设备进行调试时,paypal sdk 组件工作得非常好。当我将项目导出为 APK 时,当我到达应用程序的贝宝部分时,它“不幸停止”。调试运行与编译的 apk 文件的主要区别是什么?同样,当以调试方式运行时,实时支付服务在项目中运行良好。此项目中没有对 SHA1 差异敏感的 API 密钥(签名 apk 与调试)。

以下是我可以从从 apk 安装的应用程序的报告中看到的一些情况:

java.lang.NoSuchMethodError: no method with name='onEdgeUpdate'   signature='(Lio/card/payment/DetectionInfo;)V' in class Lio/card/payment/CardScanner;
at java.lang.Runtime.nativeLoad(Native Method)
at java.lang.Runtime.doLoad(Runtime.java:418)
at java.lang.Runtime.loadLibrary(Runtime.java:359)
at java.lang.System.loadLibrary(System.java:525)
at io.card.payment.CardScanner.<clinit>(Unknown Source)
at io.card.payment.z.c(Unknown Source)
at io.card.payment.z.a(Unknown Source)
at io.card.payment.CardIOActivity.a(Unknown Source)
at io.card.payment.CardIOActivity.a(Unknown Source)
at com.paypal.android.sdk.payments.PaymentMethodActivity.onCreate(Unknown Source)
at android.app.Activity.performCreate(Activity.java:5133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)

在调试模式下,当我按下结帐按钮时它工作正常,但这是 logcat 中的内容,也许有人可以看到一些东西:

09-11 12:43:32.932: D/dalvikvm(10630): Trying to load lib /data/app-lib/com.direction.investor.bcms-2/libcardioDecider.so 0x4219ac28
09-11 12:43:32.932: D/dalvikvm(10630): Added shared lib /data/app-lib/com.direction.investor.bcms-2/libcardioDecider.so 0x4219ac28
09-11 12:43:32.932: D/dalvikvm(10630): Trying to load lib /data/app-lib/com.direction.investor.bcms-2/libopencv_core.so 0x4219ac28
09-11 12:43:32.932: D/dalvikvm(10630): Added shared lib /data/app-lib/com.direction.investor.bcms-2/libopencv_core.so 0x4219ac28
09-11 12:43:32.942: D/dalvikvm(10630): No JNI_OnLoad found in /data/app-lib/com.direction.investor.bcms-2/libopencv_core.so 0x4219ac28, skipping init
09-11 12:43:32.942: D/dalvikvm(10630): Trying to load lib /data/app-lib/com.direction.investor.bcms-2/libopencv_imgproc.so 0x4219ac28
09-11 12:43:32.942: D/dalvikvm(10630): Added shared lib /data/app-lib/com.direction.investor.bcms-2/libopencv_imgproc.so 0x4219ac28
09-11 12:43:32.942: D/dalvikvm(10630): No JNI_OnLoad found in /data/app-lib/com.direction.investor.bcms-2/libopencv_imgproc.so 0x4219ac28, skipping init
09-11 12:43:32.942: D/dalvikvm(10630): Trying to load lib /data/app-lib/com.direction.investor.bcms-2/libcardioRecognizer.so 0x4219ac28
09-11 12:43:32.952: D/dalvikvm(10630): Added shared lib /data/app-lib/com.direction.investor.bcms-2/libcardioRecognizer.so 0x4219ac28
4

1 回答 1

3

根据 developer.android 的说法,“ProGuard 工具通过删除未使用的代码并重命名具有语义模糊名称的类、字段和方法来缩小、优化和混淆你的代码。结果是一个更小的 .apk 文件,更难以逆转工程师。”

我没有包括:

 @proguard-paypal.cnf marker in the proguard-project.txt

有关 android paypal sdk 的未来参考,请参阅https://github.com/paypal/PayPal-Android-SDK

于 2013-09-11T23:11:50.873 回答