我正在使用 AAR(https://repo1.maven.org/maven2/com/razorpay/checkout/1.6.26/checkout-1.6.26.aar)制作 Razorpay 1.6.26 的 Xamarin Android 系結庫,但由于它給出錯誤到 OnRequestPermissionsResult 方法中的引數型別,宣告為
OnRequestPermissionsResult (int p0, string[] p1, int[] p2)
但應該是
OnRequestPermissionsResult (int p0, string[] p1, Permission[] p2)
我正在嘗試使用以下 attr 代碼通過 Metadata.xml 進行更改
<attr path="/api/package[@name='com.razorpay']/class[@name='CheckoutActivity']/method[@name='OnRequestPermissionsResult' and count(parameter)=3 and parameter[1][@type='int'] and parameter[2][@type='java.lang.String[]'] and parameter[3][@type='int[]']]/parameter[3]" name="type">Android.Content.PM.Permission[]</attr>
但它不作業,錯誤和之前一樣
Severity Code Description Project File Line Suppression State
Error CS0115 'CheckoutActivity.OnRequestPermissionsResult(int, string[], int[])': no
suitable method found to override RazorPayBindingNew
知道如何解決這個問題嗎?
uj5u.com熱心網友回復:
我已經測驗了系結,您的 Metadata.xml 似乎有問題。您可以嘗試以下代碼:
<attr path="/api/package[@name='com.razorpay']/class[@name='CheckoutActivity']/method[@name='onRequestPermissionsResult' and count(parameter)=3 and parameter[1][@type='int'] and parameter[2][@type='java.lang.String[]'] and parameter[3][@type='int[]']]/parameter[3]" name="type">Android.Content.PM.Permission[]</attr>
并為我的錯誤感到抱歉。name="type"是對的。name="manageType"應該用于更改回傳型別。
'OnRequestPermissionsResult'應該是'onRequestPermissionsResult'。我檢查了系結錯誤,錯誤訊息顯示名稱應該是onRequestPermissionsResult. 我已經測驗過了,當我將其更改為onRequestPermissionsResult.
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/528304.html
