Facebook-sdk-for-unity: ArgumentException عند استخدام FB.API في الوحدة 2021.1

تم إنشاؤها على ٢٥ مارس ٢٠٢١  ·  38تعليقات  ·  مصدر: facebook/facebook-sdk-for-unity

قائمة تدقيق

بيئة

صِف بيئة التطوير الخاصة بك هنا ، مع إعطاء أكبر قدر ممكن من التفاصيل. إذا كان لديك ، فتأكد من تضمين:

  • إصدار محرر الوحدة: 2021.1.0f1
  • إصدار Unity SDK: 9.0
  • منصة التثبيت و Verison: جميع المنصات

الأهداف

أحاول استخدام FB.API للاستعلام عن صورة المستخدم مع طلب GET.

نتائج متوقعة

يجب استدعاء رد نداء OnResult في أي حال (نجاح أو خطأ).

النتائج الفعلية

لا يتم استدعاء رد الاتصال OnResult مطلقًا.

تتبع المكدس:

ArgumentException: Cannot create a data handler without payload data
UnityEngine.Networking.UploadHandlerRaw..ctor (System.Byte[] data) (at /Users/bokken/buildslave/unity/build/Modules/UnityWebRequest/Public/UploadHandler/UploadHandler.bindings.cs:97)
UnityEngine.WWW..ctor (System.String url, System.Byte[] postData, System.Collections.Generic.Dictionary`2[TKey,TValue] headers) (at /Users/bokken/buildslave/unity/build/Modules/UnityWebRequestWWW/Public/WWW.cs:106)
Facebook.Unity.AsyncRequestString+<Start>d__9.MoveNext () (at <a252100d18af4907bfe50f230228e75e>:0)
UnityEngine.SetupCoroutine.InvokeMoveNext (System.Collections.IEnumerator enumerator, System.IntPtr returnValueAddress) (at /Users/bokken/buildslave/unity/build/Runtime/Export/Scripting/Coroutines.cs:17)

خطوات التكاثر

  1. تهيئة Facebook SDK.
  2. استدعاء API

عينات وتفاصيل التعليمات البرمجية

FB.API($"{_userId}/picture?type=normal", HttpMethod.GET, OnResult);
bug

التعليق الأكثر فائدة

JustKoTMurchik ، تحتاج إلى تصحيح طريقة AsyncRequestString.Start() و GraphResult class.
سأحاول إنشاء طلب سحب قريبًا.

ال 38 كومينتر

سبب المشكلة هو الفئة القديمة WWW في الوحدة 2021. الترقية إلى UnityWebRequest تصلح المشكلة.

نفس.

كيف يمكنني الترقية إلى UnityWebRequest؟

JustKoTMurchik ، تحتاج إلى تصحيح طريقة AsyncRequestString.Start() و GraphResult class.
سأحاول إنشاء طلب سحب قريبًا.

تضمين التغريدة

+1

+1

+1

+1

أي تحديث؟

أي إصلاح؟ ...
لا شيء مذكور من سجل التغيير .. :(

JustKoTMurchik ، تحتاج إلى تصحيح طريقة AsyncRequestString.Start() و GraphResult class.
سأحاول إنشاء طلب سحب قريبًا.

ماذا تقصد ب "التصحيح"؟ أفترض أنني بحاجة إلى تجميع بعض مكتبات DLL. هل هذا صحيح؟ حاولت تنزيل تطوير الفرع وحل مشكلات التبعية وإنشاء واستبدال كل DLL من SDK في مشروعي. لكنها لم تنجح.

Velorth لقد حاولت إنشاء كل من فرع forked dev الخاص بك وفرع facebook-sdk-for-
كلا البناء فشل.

هل سبق لك أن قمت ببناء فرع التطوير الخاص بك بنجاح؟

Velorth لقد حاولت إنشاء كل من فرع forked dev الخاص بك وفرع facebook-sdk-for-
كلا البناء فشل.

هل سبق لك أن قمت ببناء فرع التطوير الخاص بك بنجاح؟

لقد نجحت في بناءهم. هم فقط بحاجة إلى بعض المراجع nuget.

كل شيء يبني بشكل جيد هنا. ولكن بمجرد أن أحاول وضع ملفات DLL في مشروع الوحدة الخاصة بي ، لا يوجد شيء FB.Mobile.som في FB.Mobile. لذلك لست متأكدا مما يحدث.

Velorth لقد حاولت إنشاء كل من فرع forked dev الخاص بك وفرع facebook-sdk-for-
كلا البناء فشل.

هل سبق لك أن قمت ببناء فرع التطوير الخاص بك بنجاح؟

image

أنا جديد على جيثب. ما الذي يمكننا تقديمه لهذا الإصدار في أسرع وقت ممكن؟

farahjr ، يبدو فرع dev
يجب تطبيق هذه التغييرات على الفرع الرئيسي ، ولكن وفقًا للقواعد ، يجب إجراء طلبات السحب لفرع التطوير.

استبدل الكود الذي تم إجراؤه في https://github.com/facebook/facebook-sdk-for-unity/pull/539/files وقم بتجميع المشروع "Facebook.Unity"

ثم استبدل DLL في مشروع الوحدة الخاص بك. إنها تعمل.

اتصل بي إذا كنت تريد DLL. لقد قمت ببنائه الآن باستخدام Unity 2021.1.5 DLLs وعمل تسجيل الدخول مرة أخرى.
تم اختباره في Editor و Android. لا أعرف لنظام IOS.

إنه مجرد حل بديل حتى يفعلوا ذلك.

بمساعدة visualbruno ، أصلحت المشكلة.

يرجى من فريق Facebook SDK إصلاح هذا الخطأ عندما يكون لديك الوقت لأن هذا الخطأ يجعل SDK الخاص بك غير قابل للاستخدام مع Unity 2021

بمساعدة visualbruno ، أصلحت المشكلة.

يرجى من فريق Facebook SDK إصلاح هذا الخطأ عندما يكون لديك الوقت لأن هذا الخطأ يجعل SDK الخاص بك غير قابل للاستخدام مع Unity 2021

نعم من فضلك انا انتظر ايضا 🙏🙏

طلب السحب الذي أنشأته Velorth يكسر دعم Unity أقل من 2017.1 .. وهذا سيء لأنه وفقًا لصفحة Facebook Unity SDK ، يذكرون أنه يتطلب Unity 5.4 وما فوق.
لن يعمل مع الإصدار 5.4 - 5.6 و 2017.1

إذا كان Facebook لا يزال يريد دعم 5.4 ، فلا يمكنهم قبول طلب السحب هذا دون تغيير.

snorrsi من السهل إصلاح مشكلة التوافق مع الإصدارات السابقة

بدءًا من Unity 5.3.4 ، يمكنك تجميع التعليمات البرمجية بشكل انتقائي بناءً على الإصدار الأول من Unity المطلوب لتجميع أو تنفيذ جزء معين من التعليمات البرمجية. بالنظر إلى تنسيق الإصدار نفسه كما هو مذكور أعلاه (XYZ) ، يعرض Unity # تعريفًا عالميًا بتنسيق UNITY_X_Y_OR_NEWER ، والذي يمكن استخدامه لهذا الغرض.

farahjr ، يبدو فرع dev
يجب تطبيق هذه التغييرات على الفرع الرئيسي ، ولكن وفقًا للقواعد ، يجب إجراء طلبات السحب لفرع التطوير.

قد يفسر ذلك مشكلتي الحالية. لقد نجحت في التكامل مع Firebase و facebook في وقت تشغيل المحرر ، ولكن عند البناء والاعتماد على هاتفي ، حصلت على خطأ في oauth:

2021/05/06 10: 23: 52.243 16976 21572 خطأ GraphResponse {HttpStatus: 400 ، errorCode: 200 ، subErrorCode: -1 ، errorType: OAuthException ، errorMessage: مطلوب رمز وصول لطلب هذا المورد.}

سأحاول إحضار الرئيسي وتصحيح التغييرات مع هذا الالتزام فقط.

kerembaydogan ،

Velorth نعم أنت على حق ، لن يعمل ذلك إذا استمروا في إصدار حزمة sdk واحدة.

ربما يقومون ببناء / إصدار حزم sdk متعددة من نفس قاعدة التعليمات البرمجية باستخدام التوجيهات ودعم إصدارات الوحدة القديمة والجديدة؟

راجع للشغل عندما تزيل الوحدة UnityWebRequest عليهم إيجاد طريقة.

لتشغيله ، قمت بحذف ملف Facebook.Unity.dll واستبدله بالمجلد المصدر Facebook.Unity ثم قمت بتصحيح الأخطاء في كود C #.
كالعادة ، نشكر Facebook على عدم اختبار Unity SDKs مطلقًا ...

فيسبوك الوحدة

هل يمكنك معرفة المزيد عن مكان العثور على ملف facebook.Unity.dll الجديد؟
او ماذا تقصد ب "استبدلها بالمجلد المصدر Facebook.Unity"؟ ...
أواجه نفس المشكلة منذ أسابيع ... :(

image

فيسبوك الوحدة

هل يمكنك معرفة المزيد عن مكان العثور على ملف facebook.Unity.dll الجديد؟
او ماذا تقصد ب "استبدلها بالمجلد المصدر Facebook.Unity"؟ ...
أواجه نفس المشكلة منذ أسابيع ... :(

image

image

مرحبًا samavan ، في مجلد FacebookSDK / Plugins ، قمت للتو بحذف ملف Facebook.Unity.dll ، ثم أسقطت المجلد المميز على لقطة الشاشة في هذا المجلد.

مرحبًا samavan ، في مجلد FacebookSDK / Plugins ، قمت للتو بحذف ملف Facebook.Unity.dll ، ثم أسقطت المجلد المميز على لقطة الشاشة في هذا المجلد.

حسنًا ، ما فعلته ولكني حصلت على أخطاء ...
كما اختفت قائمة Facebook ... :(
Screen Shot 2564-05-10 at 12 19 03

Screen Shot 2564-05-10 at 12 27 50
تمكنت أخيرًا من الحصول على البرامج النصية ليتم تجميعها دون أخطاء في إزالة ملفات dll الأخرى مع استبدال الدلائل الأصلية.
ومع ذلك ، إنشاء خطأ في التجميع على نظام iOS الأساسي.

آسف لقد نسيت خطوة ، يجب عليك إنشاء تعريف تجميع لـ Facebook.Unity بعد إضافة المجلد:

  1. انقر بزر الماوس الأيمن على Facebook.Unity folder -> Create -> Assembly Definition
  2. أعد تسميته Facebook.Unity
    يجب أن تعمل

Screenshot 2021-05-10 100808

آسف لقد نسيت خطوة ، يجب عليك إنشاء تعريف تجميع لـ Facebook.Unity بعد إضافة المجلد:

  1. انقر بزر الماوس الأيمن على Facebook.Unity folder -> Create -> Assembly Definition
  2. أعد تسميته Facebook.Unity
    يجب أن تعمل

شكرا! عملت سحر! يجمع المشروع بشكل جيد :)

ثم يبني المشروع أيضًا بشكل جيد بعد إعادة فتح كل مشاهد من دليل الأمثلة كما هو مذكور في سجلات الأخطاء هنا: https://github.com/facebook/facebook-sdk-for-unity/issues/552

ولكن بعد التجميع على الجهاز:

  1. اضغط على FB.Init
  2. اضغط على Classic تسجيل الدخول
  3. اضغط على طلب الرسم البياني
  4. اضغط على Basic request - Me >> أعط سجل خطأ من Xcode على النحو التالي
    Screen Shot 2564-05-10 at 16 01 40

اي فكرة؟ O_o ...

هل استبدلت WWW بـ UnityWebRequest؟
يمكنك العثور على ما تريد تغييره هنا: https://github.com/facebook/facebook-sdk-for-unity/pull/539/files بفضلVelorth

ولكن بعد التجميع على الجهاز:

  1. اضغط على FB.Init
  2. اضغط على Classic تسجيل الدخول
  3. اضغط على طلب الرسم البياني
  4. اضغط على Basic request - Me >> أعط سجل خطأ من Xcode على النحو التالي
    Screen Shot 2564-05-10 at 16 01 40

اي فكرة؟ O_o ...

فقط افتح الملف أعلاه وقم بتطبيق التغييرات. ثم أعد التحويل البرمجي ، واحصل على dll واستبدله على مشروعك ..

binouzefarahjr تعمل الآن سحر، وذلك بفضل لدعم سريع! ؛)

استبدل الكود الذي تم إجراؤه في https://github.com/facebook/facebook-sdk-for-unity/pull/539/files وقم بتجميع المشروع "Facebook.Unity"

ثم استبدل DLL في مشروع الوحدة الخاص بك. إنها تعمل.

اتصل بي إذا كنت تريد DLL. لقد قمت ببنائه الآن باستخدام Unity 2021.1.5 DLLs وعمل تسجيل الدخول مرة أخرى.
تم اختباره في Editor و Android. لا أعرف لنظام IOS.

إنه مجرد حل بديل حتى يفعلوا ذلك.

مرحبًا ، أحتاج إلى DLL. يرجى مشاركتها

أهلا

يمكنك تنزيلها من هنا: https://www.dropbox.com/sh/rh1r4vbevpcmq55/AAAlqW7biGD0fMQUhNzXI1B3a؟
قمت بتجميعها باستخدام Unity 2021.1.5.

يعتبر
برونو

المصدر: Courrier https://go.microsoft.com/fwlink/؟LinkId=550986 pour Windows 10

دي: إندرا كومار @ . >Envoyé le: Lundi ، 17 مايو 2021 17:29À: * @ . >
نسخة إلى: Bruno @ . > ؛ @ . * >
الهدف: Re: [facebook / facebook-sdk-for-union] ArgumentException عند استخدام FB.API في Unity 2021.1 (# 537)

استبدل الكود الذي تم إجراؤه في https://github.com/facebook/facebook-sdk-for-unity/pull/539/files وقم بتجميع المشروع "Facebook.Unity"

ثم استبدل DLL في مشروع الوحدة الخاص بك. إنها تعمل.

اتصل بي إذا كنت تريد DLL. لقد قمت ببنائه الآن باستخدام Unity 2021.1.5 DLLs وعمل تسجيل الدخول مرة أخرى.
تم اختباره في Editor و Android. لا أعرف لنظام IOS.

إنه مجرد حل بديل حتى يفعلوا ذلك.

مرحبًا ، أحتاج إلى DLL. يرجى مشاركتها

-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذا البريد الإلكتروني مباشرةً ، أو قم بعرضه على GitHub https://github.com/facebook/facebook-sdk-for-unity/issues/537#issuecomment-842419463 ، أو إلغاء الاشتراك https://github.com/notifications/unsubscribe- المصادقة / AAC7CQHYS6INJVZWF3ZW5MDTOEY7HANCNFSM4ZZTHDZQ .

مرحبًا يمكنك تنزيلها من هنا: https://www.dropbox.com/sh/rh1r4vbevpcmq55/AAAlqW7biGD0fMQUhNzXI1B3a؟dl=0 قمت بتجميعها باستخدام Unity 2021.1.5. فيما يتعلق بمكان برونو: Courrier https://go.microsoft.com/fwlink/؟LinkId=550986 للحصول على Windows 10 De: Indra Kumar @ . > Envoyé le: lundi، 17 mai 2021 17:29 À: * @ . > نسخة إلى: Bruno @ . > ؛ @ . * > Objet: Re: [facebook / facebook-sdk-for-union] ArgumentException عند استخدام FB.API في Unity 2021.1 (# 537) استبدل الكود الذي تم إجراؤه في https://github.com/facebook/ facebook-sdk-for-union / pull / 539 / files وقم بتجميع المشروع "Facebook.Unity" ثم استبدل DLL في مشروع Unity الخاص بك. إنها تعمل. اتصل بي إذا كنت تريد DLL. لقد قمت ببنائه الآن باستخدام Unity 2021.1.5 DLLs وعمل تسجيل الدخول مرة أخرى. تم اختباره في Editor و Android. لا أعرف لنظام IOS. إنه مجرد حل بديل حتى يفعلوا ذلك. مرحبًا ، أحتاج إلى DLL. يرجى مشاركتها - أنت تتلقى هذا لأنه تم ذكرك. قم بالرد على هذه الرسالة الإلكترونية مباشرةً ، أو اعرضها على GitHub < # 537 (تعليق) > ، أو قم بإلغاء الاشتراك https://github.com/notifications/unsubscribe-auth/AAC7CQHYS6INJVZWF3ZW5MDTOEY7HANCNFSM4ZZTHDZQ .

شكرا لك تعمل بشكل جيد!

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات