رفتن به مطلب
  • 0

Error APi


KSDKING

سوال

8 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

اگه از api23 استفاده میکنید به احتمال زیاد مشکل از اینه که دسترسیها تو این ورژن به صورت اتوماتیک ممکنه granted نشه و حتما باید تو برنامه قبل از اینکه درخواست call بفرستی قبلش باید درخواست permision رو بدی

قبل از اینکه startactivity کنی کد زیر رو اجرا کن


if (Build.VERSION.SDK_INT >=Build.VERSION_CODES.M){
if (checkSelfPermission(Manifest.permission.CALL_PHONE)!= PackageManager.PERMISSION_GRANTED) {
                ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.CALL_PHONE},
                        1);
            }
}
        }


حالا باید بیای و به شکل زیر نتیجه درخواست رو بگیری

@Override
    public void onRequestPermissionsResult(int requestCode,
                                           @NonNull String permissions[], @NonNull int[] grantResults) {
        switch (requestCode) {
            case 1: {
                // If request is cancelled, the result arrays are empty.
                if (grantResults.length >0&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                    
Uri uri=Uri.parse("tel:"+yournumbre)
 Intent intent = new Intent(Intent.ACTION_CALL);
                intent.setData(uri);
startActivity(intent);


                } else {
                       ندارهcall  اینجا کاربر دسترسی رو رد کرده و برنامه هنوز اجازه 
                }
            }
                 break;
            default:
                  super.onRequestPermissionsResult(requestCode, permissions, grantResults);

        }
    }

استفاده کنید ببینید اوکی میشه یا نه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این که ربطی به api نداره عزیز مربوط به دسترسی برنامه اس میگه دسترسی call رو ندادی و داری درخواستشو میدی

این خط رو به منیفست اضافه کن

<uses-permission android:name="android.permission.CALL_PHONE" />
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

این که ربطی به api نداره عزیز مربوط به دسترسی برنامه اس میگه دسترسی call رو ندادی و داری درخواستشو میدی

این خط رو به منیفست اضافه کن

<uses-permission android:name="android.permission.CALL_PHONE" />

من اینو اضافه کرده بودم از قبل...

این عکس

---------------------------------------------

اون api که نوشته یعنی چی؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

کدهاتون رو به این صورت تغییر بدین

Uri uri=Uri.parse("tel:"+yournumbre)
 Intent intent = new Intent(Intent.ACTION_CALL);
                intent.setData(uri);
startActivity(intent);
               
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

کدهاتون رو به این صورت تغییر بدین

Uri uri=Uri.parse("tel:"+yournumbre)
 Intent intent = new Intent(Intent.ACTION_CALL);
                intent.setData(uri);
startActivity(intent);
               

باز هم در قسمت

startActivity(intent);

ارور میده.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

تو ارور که مشکل میگه از annotations هست تو سایت مرجع نوشته باید این رو به پروژه اضافه کنی

کد زیر رو به build.gradle اضافه کن البته ورژنش رو متناسب با api که استفاده میکنی بزار بعد پروژه رو سینک کن

dependencies {
    compile 'com.android.support:support-annotations:22.2.0'
}
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

تو ارور که مشکل میگه از annotations هست تو سایت مرجع نوشته باید این رو به پروژه اضافه کنی

کد زیر رو به build.gradle اضافه کن البته ورژنش رو متناسب با api که استفاده میکنی بزار بعد پروژه رو سینک کن

dependencies {
    compile 'com.android.support:support-annotations:22.2.0'
}

عزیز کد رو اضافه کردم با ورژن api خودم و پروژه رو سینک کردم.اروری نداد ولی اون قسمت

startActivity(intent);

هنوز داره ارور میده :gerye:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...