-
تعداد ارسال ها
371 -
تاریخ عضویت
-
آخرین بازدید
-
روز های برد
8
نوع محتوا
نمایه ها
فروشگاه
تالارهای گفتگو
بخش دریافت
پست ها ارسال شده توسط اندرویدستان
-
-
۵۵ دقیقه قبل، محمدرضا شاهپیری گفته است:
کرومتون هم مشکل داره و کلا باز نمیشه. اول کروم رو درست کنید
سلام
کروم رو وقتی بروز میکنم مشکل بالا پیش میاد و خطا میده
ولی وقتی با نسخه قبلی کار میکنه مشکل نداره
درضمن روی بعضی از گوشیها هم همین مشکل پیش میاد
ممنون
-
یادم رفت بگم طبق عکس ارسالی وقتی مرورگر کروم BlueStacks را بروز کردم این مشکل پیش آمد
روی نسخه قبلی مرورگر کار میکرد
درضمن منیفست هم به شکل زیر هست:
AddManifestText(
<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="33" />
<supports-screens android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:anyDensity="true"/>)
SetApplicationAttribute(android:icon, "@drawable/icon")
SetApplicationAttribute(android:label, "$LABEL$")
CreateResourceFromFile(Macro, Themes.LightTheme)
AddPermission(android.permission.ACCESS_NETWORK_STATE)
AddPermission(android.permission.WAKE_LOCK)
AddPermission(android.permission.INTERNET)
AddPermission(android.permission.ACCESS_WIFI_STATE)RemovePermission(android.permission.BLUETOOTH)
RemovePermission(android.permission.BLUETOOTH_ADMIN)
RemovePermission(android.permission.BLUETOOTH_PRIVILEGED)'=========دسترسی به فایل==============
'AddPermission(android.permission.READ_MEDIA_IMAGES)
AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)
AddPermission("android.permission.WRITE_INTERNAL_STORAGE")
AddPermission(android.permission.READ_INTERNAL_STORAGE)
AddPermission(android.permission.READ_EXTERNAL_STORAGE)
CreateResourceFromFile(Macro, Core.NetworkClearText)
AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)
SetApplicationAttribute(android:requestLegacyExternalStorage,"true")'WRITE_EXTERNAL_STORAGE android sdk 29
SetApplicationAttribute(android:preserveLegacyExternalStorage,"true")'WRITE_EXTERNAL_STORAGE android sdk 29
'====================================
'============================
'SetApplicationAttribute(android:largeHeap,"true")
'SetApplicationAttribute(android:usesCleartextTraffic, "true")
AddApplicationText(
android:usesCleartextTraffic="true"
tools:ignore="GoogleAppIndexingWarning,,UnusedAttribute"
)
'============================عکس زیر نشون میده نسخه قبلی و بعدی مرورگر چی بود
درضمن وقتی روی کروم میزنم پیغام خطای زیر هم نشون میده
-
سلام
وقتی مرورگر کروم گوشی را بروزرسانی کردم نمیتوانم یک وب ویو تعریف کنم و خطا میدهد
حتی CookieManager هم کار نمیکنه
خطای زیر مبروط به ایجاد وب ویو هست:
کد ایجاد:
webAlexa.Initialize("webAlexa")
Activity.AddView(webAlexa,10dip,10dip,200dip,200dip)
webAlexa.Visible=Trueخطای مربوطه:
-
این روش هم فایده نداشت
میخواستم یک شماره IP شخصی که کیلومترها از من دور هست رو بدم و متن ارسال کنم برای او.
ممنون
-
چطوری میشه مثل B4A-Bridge اطلاعات را از یک آی پی به آی پی دیگر ارسال کرد؟
درضمن B4A-Bridge از طریق دیتا کار نمیکنه
حتما باید هردو وسیله به یک موردم ADSL وصل باشد
ممنون
-
۱ ساعت قبل، محمدرضا شاهپیری گفته است:
الان مشکل فقط روی Release (obfuscated) هست یا روی Release هم خطا میده؟
برای اینکه برنامه رو هک نکنند و کدها رو نفهمند چی هست از Release (obfuscated) استفاده میکنم
و خطا میده
چه پرداخت کنند چه انصراف از خرید بدهند
ممنون
-
۲۰ ساعت قبل، محمدرضا شاهپیری گفته است:
سلام و درود من رو اندروید 14 تست کردم موردی نبود. چک کنید حتما مایکت روی گوشیتون به روز باشه و کامپایل رو روی ریلیز بزارید نه دیباگ
سلام مهندس
جدیدترین نسخه مایکت را هم نصب کردم که امروز آمده بود بازم خطا داد
درضمن تمام کاربرانی که میگفتند پول واریز نشده همه اپلیکیشن مایکت را بروز کرده بودند
درضمن اگر برنامه روی Release باشد راحت هک میشود
نمیتوانید نسخه بعدی را طوری درست کنید که در حالت Release (obfuscated) کامپایل کنیم؟
با تشکر فراوان🥰
-
در ۱۴۰۲/۹/۲۹ در ۲۰:۳۸، farsroom گفته است:
سلام
کتابخانه مایکت خیلی عالیه
فقط برای بعضی از کاربرها این خطا را نشان میدهد
(حدودا یک سوم کاربرها خطا را دیدند برای بقیه درست عمل میکرد)
تمام موارد بالا را هم رعایت کردم
مثلا گزینه
#AdditionalJar: kotlin-stdlib-1.7.10.jar
را هم قرار دادم
ولی وقتی به گزینه onIabPurchaseFinished میرسد خطای زیر را نمایش میدهد
به غیر از این واقعا عالیه
دست کسی که کتابخانه را درست کرده درد نکند
ممنون
حتی وقتی کاربر خرید هم نمیکند و انصراف را میزند روی گزینه
onIabPurchaseFinished(result As IabResult,purchase As Purchase)
خطا میدهدمقدار را بصورت عکس فرستادم
-
سلام
کتابخانه مایکت خیلی عالیه
فقط برای بعضی از کاربرها این خطا را نشان میدهد
(حدودا یک سوم کاربرها خطا را دیدند برای بقیه درست عمل میکرد)
تمام موارد بالا را هم رعایت کردم
مثلا گزینه
#AdditionalJar: kotlin-stdlib-1.7.10.jar
را هم قرار دادم
ولی وقتی به گزینه onIabPurchaseFinished میرسد خطای زیر را نمایش میدهد
به غیر از این واقعا عالیه
دست کسی که کتابخانه را درست کرده درد نکند
ممنون
-
۲۱ ساعت قبل، محمدرضا شاهپیری گفته است:
ممنون بابت وقتی که از شما گرفتم
مشکل را پیدا کردم
و چون شما در ساخت کتابخانه زحمت کشیدید میگویم تا اگر کسی به این مشکل برخود بتواند رفع مشکل کند
فقط باید اپلیکیشن بازار را بروز میکردم
ممنون و شرمنده🥰
- 1
- 1
-
۴ ساعت قبل، محمدرضا شاهپیری گفته است:
خب اشتباه شما همین جاس.تابع init برای راه اندازی هست و متغیر دوم eventName هست نه payload
تابع خرید به شکل زیر هست و اینجا متغیر دوم payload هست
poolakey.purchaseProduct("product_id","payload")
ببخشید اشتباه شد
میخواستم این رو بنویسم
poolakey.purchaseProduct("coin_100","test")
باید کلمه test در دیتابیس بازار نمایش داده شود
ولی کلمه inapp نمایش داده میشود
با تشکر فراوان
-
1 ساعت قبل، محمدرضا شاهپیری گفته است:
سلام و درود. من متوجه مشکل نشدم دوستان. من تو پنل بازار خودم نگاه میکنم مشکلی نمیبینم و مقدار payload عینا ذخیره میشه. مسیر رو چجوری دارین میرین؟
با سلام
کدی که در سایت گذاشتید را استفاده کردم
poolakey.init("public_key","poolakey")
فقط به جای public_key کلید RSA و
به جای poolakey شناسه کالا را قرار دادم
درضمن کالا از نوع مصرفی هست
poolakey.consumeProduct(purchaseToken)
فقط همین
هیچ تغییری در کد ندادم
ممنون
-
سلام
من از پولکی بازار و هم از پولکی سایت آنسورسنتر استفاده کردم
و مشکل اینجاست که از کد زیر استفاده میکنم
Request.ProductId ="test"
Request.Payload = "hello"Poolakey.PurchaseProduct("Purchase",Request)
ولی داخل سایت بازار مقدار developerPayload را که باید hello نماید دهد شکل زیر بر میگراند و نمیشود متن مورد نظر را نوشت
"developerPayload": "inapp"
-
در ۱۴۰۱/۳/۲۰ در ۰۰:۴۴، محمدرضا شاهپیری گفته است:
Poolakey
با سلام و درود خدمت دوستان عزیز انسرسنتر .
برایتان کتابخونه آورده ایم اونم چه کتابخونه ای.
پولکی بله.
بازار کتابخونه درون پرداختشو تغییر داده و دیگه با نسخه قدیمی نمیشه رو اندرویدهای جدید درون پرداخت پیاده کرد. از طرفی این کتابخونه نسخه b4a نداره و خب برای دوستان b4a خیلی خوشایند نبود این قضیه. طبق معمول وارد عمل شدیم و طی یک عملیات واقعا پیچیده کتابخونه رو برای b4a پیادوندیم. امیدوارم مورد استفاده تون باشه.
برای استفاده هم اول به شکل زیر کتابخونه رو تعریف و اینشیالایز کنید و درنهایت به سرویس بازار متصل کنید.
Dim poolakey As Poolakey poolakey.init("public_key","poolakey") poolakey.connect Private Sub poolakey_connectionSucceed Log("connectionSucceed") 'اینجا یعنی همه چی اکی بوده و میتونید خرید رو شروع کنید End Sub
برای خرید محصولات غیر اشتراکی به شکل زیر
poolakey.purchaseProduct("product_id","payload") Private Sub poolakey_purchaseSucceed(purchaseInfo As PurchaseInfo) If purchaseInfo.payload=="buy_100_coin" Then ' اینجا اگه محصول مصرفی بود باید اونو مصرف کنید که بتوه دوباره بخره کاربر CallSubDelayed2(Me,"consumeProduct",purchaseInfo.purchaseToken) End If End Sub Private Sub consumeProduct(purchaseToken As String) poolakey.consumeProduct(purchaseToken) End Sub Private Sub poolakey_purchaseCanceled ToastMessageShow("purchaseCanceled",False) ProgressDialogHide End Sub Private Sub poolakey_purchaseFailed(error As String) ToastMessageShow("purchaseFailed::"&error,False) End Sub Private Sub poolakey_consumeSucceed ToastMessageShow("consumeSucceed",False) End Sub Private Sub poolakey_consumeFailed(error As String) ToastMessageShow("consumeFailed::"&error,False) End Sub
برای محصولات اشتراکی هم از کد زیر
poolakey.subscribeProduct("product_id","payload")
---------------------------------------------------------------------------------------------------------------------------------------
-
ارسال کننده
-
ارسال۰۱/۰۳/۲۰
-
دسته
لینک های موجود کار نمیکنه و میگه :
"متاسفانه ما مطلبی را که شما به دنبال آن هستید را پیدا نکردیم"
-
-
در ۱۴۰۲/۸/۲۷ در ۱۷:۵۰، MrMedia گفته است:
سلام به دوستان عزیز
این آموزش برای امن کردن درون پرداخت کافه بازار با توجه به مستندات خود کافه بازار هستش.
اگه نمی دونید api کافه بازار چیه کافیه به لینک زیر یه سر بزنی 😉
https://developers.cafebazaar.ir/fa/guidelines/in-app-billing/api#
برای راه اندازی API ابتدا باید یک Client ایجاد کنید. هر Client شامل اطلاعاتی است که از طرف بازار برای شناختهشدن یک کاربر API لازم است. برای ساخت Client به پیشخان بازار مراجعه نمایید و از منو تنظیمات، قسمت API توسعهدهندگان روی گزینه کلاینت جدید کلیک کنید.
در پنجرهٔ باز شده، مقدار مورد نظر خود برای Redirect URI را وارد کنید. این آدرس، مشخص میکند که بازار در پاسخ به درخواست اولیه شما برای دریافت Authorization Code، باید پاسخ را به چه آدرسی بفرستد.
به عکس زیر توجه کنید:
ما آدرس فایل php که برای چک کردن و مصرف خرید کاربران کافه بازار هستش رو درج کردیم (پایین پست فایل رو میزارم) و بعد از زدن دکمه ایجاد کلاینت، کلاینت ایجاد میشه و با عکسی مشابه عکس زیر مواجه میشید.⚠️برای امنیت برنامه خودم مقادیر رو در عکس مخدوش کردم ⚠️
✅ خب حالا دو مقدار Client Id و Client Secret رو یکجا کپی کنید چون نیازمون میشهحالا بجای سخت کار می رسیم!! به اینجای کار با خوب دقت کنید
در این مرحله در مرورگر خود یک New Tab یا پنجره جدید باز کنید و آدرس زیر را تکمیل کنید:
https://pardakht.cafebazaar.ir/devapi/v2/auth/authorize/?response_type=code&access_type=offline&redirect_uri=&client_id=
خب چطور باید تکمیلش کنیم؟ ببینید دوستان این همون متد GET هستش شما باید جلوی مساوی هایی که خالی هستش رو پر کنید
جلوی redirect_uri همون آدرس فایل php که برای ساخت کلاینت دادیم رو میزاریم (عکس 1) و جلوی client_id هم مقداری که در عکس 2 زیر همون عنوان می بینید رو درج می کنیم.
پس با این حساب آدرس ما میشه این:https://pardakht.cafebazaar.ir/devapi/v2/auth/authorize/?response_type=code&access_type=offline&redirect_uri=https://website.ir/bazaar.php&client_id=JFNF85BFPHKSVBJ67CNNDMMSUYHWNKRLLJDGRK
خب حالا آدرس رو در مرورگر وارد کنید و Enter را بزنید تا صفحه لود شود
بعد از لود شدن صفحه با چنین صفحه ای مواجه می شوید:
حالا کافیه روی تایید کلیک کنید تا به آدرس فایل php که برای ساخت کلاینت استفاده کردیم (عکس 1) ارجاع داده بشیم.
خب به آدرس مرورگر نگاه کنید آدرس مرورگر شما چیزی شبیه به این هستش:https://website.ir/bazaar.php?code=GWObRK06KHLr8pCQzDXJ9hcDdSC3eV
حالا مقداری که جلوی =code هستش رو یجا کپی کنید
خب تا اینجا ما 3 تا مقدارو گفتیم یجا کپی کنید، یادتونه؟؟؟ اون مقادیر اینا بودن: Client Id و Client Secret و code
اون مقادیر الان به کار میاد:
باید اونا رو در کد زیر جایگزین کنی<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => "https://pardakht.cafebazaar.ir/devapi/v2/auth/token/", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => array( 'grant_type' => 'authorization_code', 'code' => 'کد', 'client_id' => 'کلاینت آیدی', 'client_secret' => 'کلاینت سکرت', 'redirect_uri' => 'آدرس فایل پی اچ پی' ), )); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; }
خب فایل رو با فرمت php ذخیره کن و در هاستت آپلود کن و در مرورگر آدرسشو وارد و Enter رو بزن تا صفحه بارگذاری بشه
این کار Postman خیلی راحت تر هستش ولی گفتم شاید برخی از دوستان آشنایی ندارند با این روش جلو میریم و اگه با Postman آشنایی داری با کد curl زیر انجامش بده:curl --location --request POST 'https://pardakht.cafebazaar.ir/devapi/v2/auth/token/' \ --form 'grant_type="authorization_code"' \ --form 'code="کد"' \ --form 'client_id="کلاینت آیدی"' \ --form 'client_secret="کلاینت سکرت"' \ --form 'redirect_uri="آدرس فایل پی اچ پی"'
خب حالا برگردیم به مرورگرمون که بارگذاری شده
نتیجه به صورت متنی در قالب JSON دریافت میشه که حاوی access token ، زمان انقضا ، نوع توکن موردنظر، scope و refresh token هستش.
ما از این مقادیر جیسون فقط به refresh token نیاز داریم پس یجا کپی کن.
از این جا به بعد دیگه آسون میشه 🥰
خب یادتونه یک آدرس برای ساخت کلاینت وارد کرده بودیم؟ (عکس 1) که از آدرس https://website.ir/bazaar.php استفاده کرده بودیم؟
این کد class که باید درون این فایل قرار بگیره:
<?php /** * Class cafebazaar.ir * Author: milad kantoori */ define("clientId", "کلاینت آیدی"); define("clientSecret", "کلاینت سکرت"); define("refreshToken", "رفرش توکن"); class cafebazaar { private $access_token = ''; public function __construct() { $this->refreshTokenRequest(); } function checkPurchase($package_name, $product_id, $purchase_token, $userid) { $url = "https://pardakht.cafebazaar.ir/devapi/v2/api/validate/$package_name/inapp/$product_id/purchases/$purchase_token/?access_token=" . $this->access_token; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FAILONERROR, true); $response = curl_exec($ch); curl_close($ch); $responseData = json_decode($response, true); if (isset($responseData['consumptionState'])) { if ($responseData['consumptionState'] == 1 && $responseData['purchaseState'] == 0) { if ($this->consumePurchase($package_name, $purchase_token) == true && $responseData['developerPayload'] == $userid) { return true; } } } return false; } private function consumePurchase($package_name, $purchase_token) { $url = "https://pardakht.cafebazaar.ir/devapi/v2/api/consume/$package_name/purchases/?access_token=" . $this->access_token; $data = [ 'token' => $purchase_token ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpCode === 200) { return true; } else { return false; } } private function refreshTokenRequest() { $url = "https://pardakht.cafebazaar.ir/devapi/v2/auth/token/"; $data = [ 'grant_type' => 'refresh_token', 'client_id' => clientId, 'client_secret' => clientSecret, 'refresh_token' => refreshToken ]; $ch = curl_init($url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); $responseData = json_decode($response, true); if (isset($responseData['access_token'])) { $this->access_token = $responseData['access_token']; } curl_close($ch); } } ?>
خب در خط 7 و 8 و 9 مقادیری که گفتم کپی کن رو جایگزین کنید و تمام 🥳
دیگه می مونه فقط نحوه استفاده از این کلاس ولی چندتا نکنه هست که باید بهتون بگم:
چرا بصورت class نوشتم کدرو؟ چون می تونیم در همه پروژه هامون ازش استفاده کنیم و نیازی به کپی فایل و دستکاری و... نداره (یکی از مزیت های شی گرائی اینه)
چرا مصرف خرید درسمت سرور انجام میشه؟ چون من معتقدم که هیچ کار مهمی نباید برای امنیت در سمت کلاینت (کاربر) انجام بشه و کاربر فقط باید مشاهده کننده باشه!!!
خب چطور استفاده کنیم از این کلاس؟؟؟
شما درون فایل php که به اپلیکیشنت وصله کافیه این class رو اینجوری فراخونی کنی:require_once('bazar.php'); $cafebazaar = new cafebazaar();
بعد کافیه هر جایی از کدت خواستی خرید کاربر رو بررسی کنی این کد رو استفاده کنی:
$result = $cafebazaar->checkPurchase($_REQUEST['package_name'], $_REQUEST['product_id'], $_REQUEST['purchase_token'], $_REQUEST['userid']); if ($result) { // خرید معتبر است }else{ // خرید جعلی است }
خب کد که کاملا مشخص هستش و کافیه شما در جاهایی نوشته شده خرید معتبر و جعلی، کدهای خودت رو بنویسی.
حالا نکته آخر که باید سمت اپلیکیشن انجام بدی که مهم هستش پس خوب توجه کن:
شما در سمت کاربر یا همون اپلیکیشن باید این موارد رو انجام بدی:
1. حتما و حتما وقتی که از کتابخونه Poolaky یک متغییر PoolakeyPurchaseRequest تعریف کردی از Payload استفاده کن مقدارش رو هم آیدی یکتا کاربر بزار (android_id)
2. موقعی که میخای به سمت سرور درخواست بدی باید موارد زیر رو ارسال کنی:
✅ پکیج نیم
✅ آیدی محصول
✅ توکن خرید
✅ آیدی یکتا کاربردرخواست به صورت GET فرستاده بشه و با کلید های:
🔑 package_name
🔑 product_id
🔑 purchase_token
🔑 userid
برای مثال:https://website.ir/api.php?package_name=پکیج_نیم&product_id=آیدی_محصول&purchase_token=توکن_خرید&userid=آیدی_یکتا_کاربر
در مثال بالا مواردی که فارسی هستند باید جایگزین شه
همه موارد کاملا مشخصه فقط شاید توکن خرید براتون ناآشنا باشه 🤔
بعد از خرید موفق از بازار یک تابع که با اول نام ایونتی که شما موقع تعریف کتابخونه پولکی داشتید فراخونی میشه. ما اینجا فکر میکنیم نام این ایونت یا رویداد رو گذاشته بودیم bazaar پس این تابع بعد از خرید موفق فراخونی میشه:Private Sub bazaar_PurchaseSucceed (PurchaseInfo As PoolakeyPurchaseInfo) PToken = PurchaseInfo.PurchaseToken End Sub
در مثال بالا PToken همون مقدار string توکن خرید هستش که باید موقع بررسی خرید ارسال کنیم.
دیگه شما از چه کتابخونه ای برای ارسال مقادیر با متد GET استفاده می کنید با خودتونه. میتونی کتابخونه پیشفرض b4a باشه یا کتابخونه ای که خرید کردین 🥰
امیدوارم این آموزش به کارتون بیاد 🤩
و اینکه این فروم مکانی امن و رایگان برای یادگیری هستش، اگه حس میکنی نه تنها این مطلب بلکه مطالب، کتابخونه ها رایگان و... انجمن بهت کمک کرده ممنون میشم به انجمن خودتون از طریق لینک زیر به مبلغ دلخواه کمک کنید.
لینک حمایت مالی جهت حفظ و ارتقا سیستم انجمن و ارتقا کتابخانه ها + به روزرسانی و حمایت از تیم برنامه نویسی
دمت گرم
شیر مادر نان پدر حلالت باشه
واقعا عالیییییییییییی بود 🥰
- 1
-
باز هم عذر خواهی میکنم اگه میشه لینک دانلود برای بروزرسانی SDK رو میشه بدید چندتا سایت رو دیدم همه قدیمی بود
ممنون
-
با عرض شرمندگی
بروز هست
احتمالا مشکل از چیز دیگه نیست؟
-
-
در ۱۴۰۰/۵/۲۴ در ۰۰:۲۰، محمدرضا شاهپیری گفته است:
سلام. از بخش فروشگاه و مدیریت خرید میتونید دانلود کنید
عالی بود دانلود شد
فدایت
-
سلام
من هزینه خرید کتابخانه را دادم ولی هنوز ایمیلی برای من نیامده
-
لینکهای بالا کار نمیکنه
لینکهای بالا کار نمیکنه
-
سلام
می خواستم یک برنامه درست کنم که بعد از نصب کلید اجرا در پس زمینه طبق عکس زیر فعال باشه
از هر کدی داخل منیفست هم که بگید استفاده کردم ولی باز این کلید غیر فعاله
اگه کسی بلده خواهشا راهنمایی کنه که گیرم
فدایت
مشکل با cookiemanager
در پرسش و پاسخ (بیسیک4اندروید)
ارسال شده در
درسته با گوشی هوآووی Y3 2017
مدل EULA
نسخه اندروی 6
کار نمیکنه
حتی وارد وبسایت میشی و رمز عبور میدی هم فقط صفحه سفید میشه
انگار که خودش کوکی خودش رو نمیتونه بخونه
ممنون