سلام
زمانی که من request رو میسازم و log میزارم داخل متد onResponse هیچ داده ای از سمت سرور با url مشخص شده برای من ارسال نمیشه؟؟
سلام
این دو راه رو امتحان کنین
http رو به https تغییر بدین
اگر نشد
بیاین و در manifest پروژه و کد زیر رو اضافه کنین در تگ اپلیکیشن
usesCleartextTraffic ="true"
این مشکل بخاطر این هست که سرور شما شاید ssl نباشه که در پلتفرم اندروید از api28 به بالا اگر sslنباشد این مشکل رو خواهید داشت.
که استاد در جلسات آینده توضیحاتی دادن.
موفق باشین
ممنون ازتون پوریا و مهرداد جان
ولی من نکات شمارو قبل از اجرای برنامه انجام داده بودم ولی باز اتفاقی ک میفته با اینکه من request رو ب سمت سرور میفرستم ولی response نمیاد یعنی ادرس url اینجا تنها مشکل دریافت اطلاعاته !!!!
StringRequest request=new StringRequest(Request.Method.GET, "https://expertdevelopers.ir/api/v1/experts/students" , new Response.Listener<String>() { @Override public void onResponse(String response) { Log.i(TAG, "onResponse: "); } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { } }); RequestQueue requestQueue= Volley.newRequestQueue(this); requestQueue.add(request);
سلام. این آدرس وجود نداره.
توو مرورگرتون باز کنید، خطای not found میده.
بعد اینکه کدهارو زیر هم مینویسید، خوانایی کدو خیلی میاره پایین. این نوع نوشتن، مخصوص پارامتر های ورودی متدها و شرط ها و chaining methods و ...، زمانیکه طول دستورات زیاد بشه و در ادیتور نیاز به اسکرول عمودی باشه، برای خوانایی بیشتر زیر هم نوشته میشه.
محمد جان ادرس مورد نظر این هست شما اشتباه وارد کردی student هست
http://expertdevelopers.ir/api/v1/experts/student
سلام مجدد محمد
همین کار های که بچه ها گفتن رو انجام دادم مشکلی نبود وپاسخ دریافت شد. شاید نتت مشکل داشته باشه
مهرداد جان تمامی مراحل رو حتی از اول رفتم و اینترنت رو هم چک کردم مشکلی نبود ولی الان علاوه بر مشکل اصلی ک بود close میده از app
سلام مجدد محمد دانلود کردم اولین مشکل که فکر کنم این واسه من بود وشما باهاش برخورد نمیکنید مشکل gradle بود
Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all artifacts for configuration ':classpath'
که این حل شد بعد sync رو api۲۹ اجرا کردم مشکلی نداشت و پاسخ رو دریافت کردم بعد دوباره اومدم رو lollipop بررسی کردم خطای زیر رو داد
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.a7learnstudent, PID: 30985
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.a7learnstudent/com.example.a7learnstudent.MainActivity}: android.view.InflateException: Binary XML file line #27: Error inflating class com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2695)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
at android.app.ActivityThread.access$900(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1430)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5910)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)
Caused by: android.view.InflateException: Binary XML file line #27: Error inflating class com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
at android.view.LayoutInflater.createView(LayoutInflater.java:633)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
at com.example.a7learnstudent.MainActivity.onCreate(MainActivity.java:32)
at android.app.Activity.performCreate(Activity.java:6178)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2648)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
at android.app.ActivityThread.access$900(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1430)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5910)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at android.view.LayoutInflater.createView(LayoutInflater.java:607)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
at com.example.a7learnstudent.MainActivity.onCreate(MainActivity.java:32)
at android.app.Activity.performCreate(Activity.java:6178)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2648)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
at android.app.ActivityThread.access$900(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1430)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5910)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)
Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f07006e
at android.content.res.Resources.getValue(Resources.java:1542)
at androidx.appcompat.widget.ResourceManagerInternal.loadDrawableFromDelegates(ResourceManagerInternal.java:252)
at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:139)
at androidx.appcompat.widget.ResourceManagerInternal.getDrawable(ResourceManagerInternal.java:132)
at androidx.appcompat.content.res.AppCompatResources.getDrawable(AppCompatResources.java:104)
at com.google.android.material.resources.MaterialResources.getDrawable(MaterialResources.java:115)
at com.google.android.material.button.MaterialButton.<init>(MaterialButton.java:211)
at com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton.<init>(ExtendedFloatingActionButton.java:143)
at com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton.<init>(ExtendedFloatingActionButton.java:137)
at java.lang.reflect.Constructor.newInstance(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:288)
at android.view.LayoutInflater.createView(LayoutInflater.java:607)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
at com.example.a7learnstudent.MainActivity.onCreate(MainActivity.java:32)
at android.app.Activity.performCreate(Activity.java:6178)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2648)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
at android.app.ActivityThread.access$900(ActivityThread.java:177)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1430)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5910)
مربوط به floating action button بود که با حذفش دیگه مشکلی نبود تنها رو عبور از این واسم این بود از خیر
fab material بگذرم به جای fa از یه LinearLayout میشه استفاده کرد و اونو پیاده سازی کرد
اما رو api های بالاتر مشکل خاصی نداشت بنظرم دوباره یه پروژه جدید بساز و از اول بنویسش چون کد جاوا وxml هیچ
مشکلی نداشت
بهترین راه برای خطایابی هنگام ارسال درخواست به سرور اینه که حداقل یک break point روی خط onResponse و یک break point روی خط onError داشته باشید، همیشه یکی از این دو متد صدا زده می شن، بعد از انجام انجام این کارها، متن ارور رو بدست میارید. اگر ارور رو خودتون متوجه نشدین، متن ارور رو داخل این بخش قرار می دید که بشه راه حل داد. این مورد رو داخل ویدیو توضیح دادم.
سلام این مشکل رو منم داشتم دلیلشم این هست که اینترنت سیستمتون با شبیه ساز share نمیشه که اگه مرورگر داخل شبیه ساز رو هم باز کنید متوجه این موضوع میشید بخاطر باگی هست که شبیه سازها دارن
روی گوشی واقعی جواب میده چون اینترنت مشکلی نداره