1

我在尝试为这个名为 Slyce 的第 3 方产品制作绑定库时遇到了一些挑战...... GitHub 上有 sdks

https://github.com/Slyce-Inc/Slyce-Android-SDK

https://github.com/Slyce-Inc/Slyce-iOS-SDK

在 Android 端使用下面的元文件我可以编译它,但我无法使用附加的参考构建我的项目,我得到以下错误。

CameraFrame_ReleaseListenerImplementor.java(40,40):错误:错误:ReleaseListener 在 CameraFrame com.android.slyce.scanner.CameraFrame.ReleaseListener 中具有受保护的访问权限

CameraInstance_ListenerImplementor.java(43,43):错误:错误:侦听器在 CameraInstance com.android.slyce.scanner.CameraInstance.Listener 中具有受保护的访问权限

meta file
<?xml version="1.0" encoding="UTF-8"?>
<metadata>

    <attr path="/api/package[@name='com.android.slyce.communication']/interface[@name='CommManager.On2DSearchListener']"    name="argsType">OnTwoDSearchListener</attr>

    <attr path="/api/package[@name='com.android.slyce.utils']/class[@name='Constants']/field[@name='_1D']" 
    name="managedName">OneD</attr>

      <attr path="/api/package[@name='com.android.slyce.utils']/class[@name='Constants']/field[@name='_2D']" 
    name="managedName">TwoD</attr>

      <attr path="/api/package[@name='com.android.slyce.utils']/class[@name='Constants']/field[@name='_3D']" 
    name="managedName">ThreeD</attr>

    <attr path="/api/package[@name='com.android.slyce.utils']/class[@name='BarcodeHelper.ScannerType']/field[@name='_2D']" 
    name="managedName">TwoD</attr>

    <attr path="/api/package[@name='com.android.slyce.utils']/class[@name='BarcodeHelper.ScannerType']/field[@name='_3D']" 
    name="managedName">ThreeD</attr>


<!--
    Volley Stuff
    -->
    <!-- Change the name of the Request interface -->

    <attr path="/api/package[@name='com.android.volley']/interface[@name='Request.Method']" name="managedName">RequestMethod</attr>

    <attr path="/api/package[@name='com.android.volley']/class[@name='Request']/method[@name='compareTo' and count(parameter)=1 and parameter[1][@type='com.android.volley.Request&lt;T&gt;']]/parameter[1]" name="managedType">Java.Lang.Object</attr>
    <attr path="/api/package[@name='com.android.volley.toolbox']/class[@name='ImageRequest']/method[@name='deliverResponse' and count(parameter)=1 and parameter[1][@type='android.graphics.Bitmap']]/parameter[1]" name="managedType">Java.Lang.Object</attr>

    <remove-node path="/api/package[@name='com.android.volley.toolbox']/class[@name='JsonRequest']/method[@name='parseNetworkResponse' and count(parameter)=1 and parameter[1][@type='com.android.volley.NetworkResponse']]"/>

<!--     OnSlyceCameraListener-->

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraBarcodeDetected']" name="argsType">OnSlyceCameraListener_onCameraBarcodeDetected</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraBarcodeInfoReceived']" name="argsType">OnSlyceCameraListener_onCameraBarcodeInfoReceived</attr>

<!--        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraFinished']" name="argsType">OnSlyceCameraListener_onCameraFinished</attr>-->

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraImageDetected']" name="argsType">OnSlyceCameraListener_onCameraImageDetected</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraImageInfoReceived']" name="argsType">OnSlyceCameraListener_onCameraImageInfoReceived</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraPreviewMode']" name="argsType">OnSlyceCameraListener_onCameraPreviewMode</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraResultsReceived' ]" name="argsType">OnSlyceCameraListener_onCameraResultsReceived</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraSlyceProgress']" name="argsType">OnSlyceCameraListener_onCameraSlyceProgress</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onCameraSlyceRequestStage' ]" name="argsType">OnSlyceCameraListener_onCameraSlyceRequestStage</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onProgressExt']" name="argsType">OnSlyceCameraListener_onProgressExt</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onResultsReceivedExt']" name="argsType">OnSlyceCameraListener_onResultsReceivedExt</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onSlyceCameraError' ]" name="argsType">OnSlyceCameraListener_onSlyceCameraError</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onSnap']" name="argsType">OnSlyceCameraListener_onSnap</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceCameraListener']/method[@name='onTap']" name="argsType">OnSlyceCameraListener_onTap</attr>

<!--OnSlyceRequestListener -->

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraBarcodeDetected']" name="argsType">OnSlyceRequestListener_onCameraBarcodeDetected</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraBarcodeInfoReceived']" name="argsType">OnSlyceRequestListener_onCameraBarcodeInfoReceived</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraFinished']" name="argsType">OnSlyceRequestListener_onCameraFinished</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraImageDetected']" name="argsType">OnSlyceRequestListener_onCameraImageDetected</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraImageInfoReceived']" name="argsType">OnSlyceRequestListener_onCameraImageInfoReceived</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraPreviewMode']" name="argsType">OnSlyceRequestListener_onCameraPreviewMode</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraResultsReceived' ]" name="argsType">OnSlyceRequestListener_onCameraResultsReceived</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraSlyceProgress']" name="argsType">OnSlyceRequestListener_onCameraSlyceProgress</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onCameraSlyceRequestStage' ]" name="argsType">OnSlyceRequestListener_onCameraSlyceRequestStage</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onProgressExt']" name="argsType">OnSlyceRequestListener_onProgressExt</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onResultsReceivedExt']" name="argsType">OnSlyceRequestListener_onResultsReceivedExt</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onSlyceCameraError' ]" name="argsType">OnSlyceRequestListener_onSlyceCameraError</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onSnap']" name="argsType">OnSlyceRequestListener_onSnap</attr>

        <attr path="/api/package[@name='com.android.slyce.listeners']/interface[@name='OnSlyceRequestListener']/method[@name='onTap']" name="argsType">OnSlyceRequestListener_onTap</attr>

        <attr path="/api/package[@name='com.android.slyce.scanner']/interface[@name='CameraFrame.ReleaseListener']" name="visibility">public</attr>

        <attr path="/api/package[@name='com.android.slyce.crop']/class[@name='ImageViewTouchBase']" name="visibility">public</attr>

        <attr path="/api/package[@name='com.android.slyce.scanner']/interface[@name='CameraInstance']" name="visibility">public</attr>

        <attr path="/api/package[@name='com.android.volley']/class[@name='Request']/method[@name='deliverResponse']" name="abstract">false</attr>    
</metadata>

在 IOS 端,这里是 Sharpie 在尝试使用框架时的输出

$ sharpie bind -framework SlyceSDK.framework 
Parsing 1 header files...

Binding...
  no types were parsed that could be bound

Done. Exiting with error code 1.
4

0 回答 0