मैं एक जावा इंटरफ़ेस MyService
कहा जाता है, जो एक विधि है के साथ एक .jar
फ़ाइल है:Xamarin बाध्यकारी .jar - 'बिटमैप पाया नहीं जा सका'
boolean printBitmapObject(android.graphics.Bitmap bitmap, byte[] result);
मैं में सी # में इस .jar
फ़ाइल का उपयोग करना चाहते हैं विजुअल स्टूडियो 2015 में मेरी एंड्रॉइड ज़ैमरिन प्रोजेक्ट। मैंने निम्नलिखित चरणों का पालन किया:
- मैंने एक नई लाइब्रेरी बाइंडिंग प्रोजेक्ट बनाई है।
- मैंने फ़ाइल
Jars
BuildAction
संपत्तिInputJar
पर सेट की गई नई परियोजना की निर्देशिका में डाल दी है। - परियोजना सफलतापूर्वक बनाई गई थी।
- मैंने लाइब्रेरी बाइंडिंग प्रोजेक्ट को मेरे मुख्य प्रोजेक्ट में संदर्भ जोड़ा।
दुर्भाग्य से, मैं अपने मुख्य परियोजना अब निर्माण नहीं कर सकते, स्वत: जनरेट सी # कोड में कोई त्रुटि है, क्योंकि वहाँ: संदेश "The type or namespace name 'Bitmap' could not be found (are you missing a using directive or an assembly reference?)"
साथ
public interface IMyService : global::Android.OS.IInterface
{
bool PrintBitmapObject (Bitmap bmp, byte[] result); //"Bitmap" is red underlined
}
।
एक ऑटो-जेनरेटेड अमूर्त वर्ग IMyServiceStub
भी है, जो Bitmap
को भी पहचान नहीं पाता है। इसके अलावा, यह पता नहीं है कुछ स्वत: जनरेट BitmapStub
या तो:
public abstract class IMyServiceStub : global::Android.OS.Binder, global::Android.OS.IInterface, IMyService
{
...
protected override bool OnTransact (int code, global::Android.OS.Parcel data, global::Android.OS.Parcel reply, int flags)
{
...
case TransactionPrintBitmapObject: {
data.EnforceInterface (descriptor);
Bitmap arg0 = default (Bitmap); //Bitmap red underlined
arg0 = BitmapStub.AsInterface (data.ReadStrongBinder()); //BitmapStub red underlined
byte [] arg1 = default (byte []);
var result = this.PrintBitmapObject (arg0, arg1);
reply.WriteNoException();
reply.WriteInt (result ? 1 : 0);
data.WriteByteArray (arg1);
return true;
}
...
}
}
मैं स्वत: जनरेट फाइल करने के लिए using Bitmap = Android.Graphics.Bitmap
जोड़ने की कोशिश की है, लेकिन यह मदद नहीं करता है, क्योंकि BitmapStub
अनजान बनी हुई है और मेरे परिवर्तन के दौरान ओवरराइट कर रहे हैं अगला निर्माण।
क्या इस मुद्दे को ठीक करने के लिए मैं कुछ भी कर सकता हूं? या यह Xamarin में एक ज्ञात बग है (मैं संस्करण 4.0 का उपयोग करें)?
क्या आप .jar साझा कर सकते हैं ताकि मैं आपकी मदद करने की कोशिश कर सकूं? – jzeferino
@jzeferino मैं दुर्भाग्य से नहीं कर सकता, मैं एनडीए तोड़ूंगा ... – vojta