اسکنر QR اندروید با پشتیبانی از UPI
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
Android 13 (با سازگاری به عقب برای Android 12) با افزودن یک اسکنر اختصاصی QR Code که کاربران می توانند مستقیماً از کاشی تنظیمات سریع مربوطه به آن دسترسی داشته باشند، از جریان های پرداخت UPI پشتیبانی می کند. کاربران می توانند با اسکن یک کد QR یا از دوربین زنده یا از یک تصویر ثابت، یک جریان پرداخت UPI را راه اندازی کنند.




هنگامی که چندین برنامه UPI روی یک دستگاه نصب میشود، یک گفتگوی ابهامزدایی به کاربر نمایش داده میشود. سپس جریان پرداخت در برنامه انتخاب شده توسط کاربر ادامه می یابد.
توجه داشته باشید که ترتیب برنامه ها به هیچ وجه تغییر نمی کند. برنامههای پرکاربرد کاربران توسط سیستمعامل اولویتبندی میشوند و در ابتدا نمایش داده میشوند، شبیه به گفتگوی هدف UPI موجود.
از اهداف UPI از اسکنر QR Android پشتیبانی کنید
هنگامی که یک برنامه پرداخت از طریق این جریان راه اندازی می شود، شناسه بسته تماس به عنوان com.google.android.gms تنظیم می شود. این مقدار قابل تغییر نیست.
برنامههای پرداخت باید این منبع را تأیید کنند و همه جریانهای پرداختی را که از این شناسه بسته آغاز شده است، مدیریت کنند تا بهعنوان آغازشده توسط QR تلقی شوند و هنگام ارسال دادهها به PSP گیرنده پرداخت، حالت شروع را روی QR تنظیم کنند .
برای تمایز بین پرداختهای آغاز شده از اسکن QR Code زنده (با استفاده از دوربین) و اسکن تصویر QR Code (عکس روی دستگاه)، اسکنر QR یک هدف اضافی را ارسال میکند که به شناسایی منبع کد QR کمک میکند.
برنامههای پرداخت باید با کلید com.google.android.gms.UPI_QR_SOURCE
مقدار "intent extra " را دریافت کنند و سپس با موارد زیر مقایسه کنند:
- رشته
STATIC_IMAGE
نشان می دهد که منبع یک تصویر ثابت است. - رشته
LIVE_CAMERA
نشان می دهد که منبع دوربین است.
کلید | ارزش | توضیح |
com.google.android.gms.UPI_QR_SOURCE | STATIC_IMAGE | تصویر کد QR روی دستگاه ذخیره شده است. |
| LIVE_CAMERA | تصویر کد QR به صورت زنده با استفاده از دوربین گرفته شده است |
محتوا و نمونه کدها در این صفحه مشمول پروانههای توصیفشده در پروانه محتوا هستند. جاوا و OpenJDK علامتهای تجاری یا علامتهای تجاری ثبتشده Oracle و/یا وابستههای آن هستند.
تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2025-07-29 بهوقت ساعت هماهنگ جهانی."],[],[],null,["# Android QR scanner with UPI support\n\nAndroid 13 (with backwards compatibility for Android 12) supports UPI\npayment flows by adding a dedicated QR Code scanner that users can access\ndirectly from the corresponding Quick Settings tile. Users can launch\na UPI payment flow by scanning a QR Code either from the live camera or from\na static image.\n\n\nWhen multiple UPI apps are installed on a device, the user is presented\nwith a disambiguation dialog. The payment flow then continues in the app\nselected by the user.\n\nNote that the order of apps is not modified in any manner. Users' most\nfrequently used apps are prioritized by the OS and displayed first, similar to\nthe existing UPI intent dialog.\n\nSupport UPI intents from Android QR scanner\n-------------------------------------------\n\nWhen a payment app is launched via this flow, the calling package ID is set\nas **com.google.android.gms**. This value cannot be altered.\n\nPayment apps need to **verify this source** and handle all the payment\nflows initiated from this package ID to be **treated as initiated by QR** and\n**set the initiation mode to QR when sending data to the payee's PSP**.\n\nTo distinguish between payments initiated from scanning a live QR Code (using\nthe camera) and scanning a QR Code image (photo on device), the QR scanner\npasses an intent **extra** which helps identify the source of the QR Code.\n\nPayment apps need to fetch the value of \"intent **extra** \" with the key\n`com.google.android.gms.UPI_QR_SOURCE`, and then compare with the following:\n\n- `STATIC_IMAGE` string indicates that the source is a static image.\n- `LIVE_CAMERA` string indicates that the source is the camera.\n\n|--------------------------------------|----------------|----------------------------------------------|\n| **Key** | **Value** | **Explanation** |\n| com.google.android.gms.UPI_QR_SOURCE | `STATIC_IMAGE` | QR code image stored on the device. |\n| | `LIVE_CAMERA` | QR code image captured live using the camera |"]]