اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

- برای استفاده از تمامی امکانات سایت لطفا در انجمن عضو شوید


mehrabmmp

کاربر نیمه فعال
  • تعداد ارسال ها

    490
  • تاریخ عضویت

  • آخرین بازدید

1 دنبال کننده

درباره mehrabmmp

  • درجه
    کاربر نیمه فعال

مشخصات پروفایل

  • محل زندگی اذربایجان شرقی
  • محل تولد اذربایجان شرقی
  • علاقه مندی ها علاقه مند به برنامه نویسی

آخرین بازدید کنندگان نمایه

4,789 بازدید کننده نمایه
  1. سلام تو گوگل جستجو کردم چیزی که شما میخواین fcm یا gcm نیست چیزی که من تو سایت گوگل دیدم از این سرویس واسه پوش استفاده میکنن چیزی که شما میخواین باید از سوکت استفاده کنین چقد چیز چیز شد
  2. فکر نکنم مشکل از کتابخونه ها باشه چون من تا حالا با این کتابخونه ها به چنین مشکلی برنخوردم مشکل از یه جای دیگس کد هاتون رو چک کنید و شما رو گوشی های دیگه هم چک کردین که ببینین با نت گوشی اونا هم اینجوری میشه یا نه ؟
  3. سلام Sub Button1_Click'''''''insert dar database''''''' If EditText1.Text = "" Or EditText2.Text = "" Then ToastMessageShow("متنی وارد نشده",False) Else Dim a As Int a = Msgbox2("خیر","","بله","ذخیره اطلاعات","مطمن هستید؟",Null) If a = DialogResponse.POSITIVE Then cur = sql.ExecQuery("SELECT * FROM mytbl WHERE title = '"&EditText1.Text&"'") If cur.RowCount > 0 Then ToastMessageShow("اطلاعات تکراری میباشد",False) Else sql.ExecNonQuery("INSERT INTO mytbl (id,title,content,gens) VALUES (null,'"& EditText1.Text &"','"& EditText2.Text &"','"& EditText3.Text &"')") ToastMessageShow("sabt shod",False) End If 'dobare list view ro load mikonam ta taghirat maloom beshe' ListView1.Clear cur = sql.ExecQuery("SELECT * FROM mytbl") For i = 0 To cur.RowCount - 1 cur.Position = i ListView1.AddSingleLine2(cur.GetString("title"),cur.GetInt("id")) Next End If End If End Sub
  4. کدای php و ariavolley رو قرار بدید بررسی کنیم
  5. برو شکایت کن امروز از تو میخوره فرداش از یکی دیگه
  6. B4A 6.80

    خیلی ممنون از اقا پژمان گل
  7. بله باید از فروشگاه تهیه کنید
  8. سلام سرچ کنید تو انجمن اموزش پرداخت درون برنامه ای هست
  9. اون ثانیه هستش نه میلی ثانیه من یه هفتس یه توکن گرفتم هنوز هم کار میکنه چه ربطی به بحث داشت اگه اینجوری باشه من قبل از شما مورد رو دنبال کردم :| خب یه راه واسه این بگین :|
  10. دوست عزیز چه فرقی داره شما از سمت سرور اینکارو بکنین یا سمت بیسیک وقتی شما میخاین از سمت سرور درخواست کنین به توکن و شناسه محصولو ... احتیاج نیست ؟ اینارو هم که باید از بیسیک بفرستیم به php اونجوری که شما میگین از بیسیک فرستادن امن نیست میتونن تغییر بدن پس موقع ارسال توکن به فایل php هم میشه تغییرش داد
  11. قربونت شرمنده نتونستم فیلم کنم اگه از دوستان یه نفر زحمت بکشه ممنون میشیم
  12. سلام به همه دوستان و خسته نباشید خب دوستان با اموزش امن کردن پرداخت درون برنامه ای بازار با api اش در خدمتتونم اولش یه تشکر ویژه از اقا پژمان میکنم که روش بدست اوردن توکن رو بهمون گفتن دوستان این کار خیلی ساده ای است که میتونین انجام بدین چون بازار خودش همه چیز رو گفته ولی بعضی از دوستان تو این مشکل دارن که امیدوارم این اموزش مشکلشون رو حل کنه خب اول اینو بگم که اولین بارمه دارم پست اموزشی میزارم اگه سوتی چیزی دادم یا اشتباهی شد ببخشید خب بریم اموزش : اول به یک هاستی سروری یه چیزی نیاز داریم که توش یه فایل php بسازیم تا بتونیم باهاش access code رو دریافت کنیم میریم سایت بازار ورود میکنیم میریم پنل توسعه دهندگان بعد قسمت امور مالی و فروش میریم قسمت api بازار که نوشته client جدید که روش با محبت کلیک میکنیم یه دیالوگ میاد که نوشته Redirect URI (همون لینک فایل php) میریم داخل هاست یا سرورمون تو بعد قسمت File Manager و تو پوشه public_html یه فایل php به اسم مثلا test میسازیم و توش چیزی نمینویسیم بعد لینکشو برمیداریم که به این شکل میشه http://اسم دامینتون/test.php بعد میایم لینک رو اینجا میدیم دقت کنید که حتما باید اولش از http:// استفاده کنید بعد ارسال رو میزنیم بعد اون یه کلاینت جدید به اینصورت اضافه میشه بعد اون طبق گفته بازار به این لینک میریم و مقادیرمون رو جایگزین میکنیم https://pardakht.cafebazaar.ir/devapi/v2/auth/authorize/?response_type=code&access_type=offline&redirect_uri=<REDIRECT_URI>&client_id=<CLIENT_ID> <REDIRECT_URI> ======> اینجا لینک فایل پی اچ پی تون رو میزارید <CLIENT_ID> ======> و اینجا کلاینت ایدی که تو پنل بازار دریافت کردیم رو میزارید و enter بعدش یه صفحه میاد که توش مینویسه مجوز دسترسی که تاییدش میکنید بعد که تاییدش کردین یه صفحه خالی میاد که کد ما تو لینک اون صفحه قرار داره به این صورت : اون کد رو برمیداریم و تو این لینک استفاده میکنیم https://pardakht.cafebazaar.ir/devapi/v2/auth/token/ مثال https://pardakht.cafebazaar.ir/devapi/v2/auth/token/کدمون و بعد اینتر و یه صفحه به این شکل میاد تو فیلد اول این متن رو وارد میکنید : authorization_code تو فیلد دوم کدی که دریافت کردیم و تو فیلد سوم کلاینت ایدی که تو صفحه بازار دریافت کردیم و فیلد چهارم به همین صورت که تو پنل بازار هستش و اخری هم لینک فایل php ایمون بعد هم که اون دکمه رو میزنیم و یه متنی به صورت جیسون به این شکل میده { "access_token": "GWObRK06KHLr8pCQzDXJ9hcDdSC3eV", "token_type": "Bearer", "expires_in": 3600000, "refresh_token": "yBC4br1l6OCNWnahJvreOchIZ9B6ze", "scope": "androidpublisher" } اولی کدی هستش که بخاطرش اینهمه سختی کشیدیم دومی هیچ سومی زمان اعتبار این کد به ثانیه که تقریبا میشه 41 روز بعد این مدت این کد میسوزه () و دیگه کار نمیکنه و با کد چهارمی که داده همون رفرشن توکن باید از این لینک یکی دیگه بگیرین و استفاده کنین https://pardakht.cafebazaar.ir/devapi/v2/auth/token/ و grant_type = refresh_token =====> اینبار این متن رو میدین client_id = =====> کلاینت ایدیتون client_secret = =====> کلاینت سکرتتون refresh_token = =====> و رفرش توکنی که دریافت کردید و بعد این یه اکسس توکن دیگه بهتون میده که استفاده میکنید خب کارمون اینطرف تموم شد و میریم سمت بیسیک بیسیکتون رو باز کنین :| اول نیت کنین میریم تو کدای سمت پرداخت و من از ساب پرداختش شروع میکنم Sub pay_PurchaseCompleted (Success As Boolean, Product As Purchase) If Success Then Try Dim jo As JavaObject = Product Dim raw As String = jo.RunMethod("getOriginalJson", Null) Dim parser As JSONParser parser.Initialize(raw) Dim root As Map = parser.NextObject Dim packageName As String = root.Get("packageName") Dim purchaseToken As String = root.Get("purchaseToken") Dim productId As String = root.Get("productId") Dim accesstoken As String = "6ghOGaSdSf1QT5o6CZvaXvFCG3HlX" link = "https://pardakht.cafebazaar.ir/devapi/v2/api/validate/"&packageName&"/inapp/"&productId&"/purchases/"&purchaseToken&"/?access_token="&accesstoken Volley4.AddQueue(Volley4.CreateJsonRequest(link,Volley4.GET)) Volley4.Start Catch ToastMessageShow("error : " & LastException,False) End Try Else ToastMessageShow("پرداخت انجام نشد",False) End If End Sub خب این ساب پرداخت هستش که بعد از پرداخت این ساب اجرا میشه میایم تو این کدا میگیم اگه پرداختمون با موفقیت بود بیا با جاوا ابجکت و جیسون پارسر یه سری اطلاعات بعد پرداخت رو بگیر که توش توکن پرداخت شناسه محصول و پکیج برنامه هستش بعد یه متغییر از نوع استرینگ تعریف کردم به اسم link مقدارش رو به اون صورت گذاشتم که شما هم باید اینکار رو بکنین من واسه ارسال اطلاعات بجای httputils از AriaVolley اقای شاهدی استفاده کردم و دریافتش کنین و تیکشو بزنین بعد اونجا لینک رو بهش دادیم و یه درخواست از نوع جیسون دادیم بعد دو تا ساب داریم برای اریا ولی : Sub Volley4_OnError (Error As String) ToastMessageShow("لطفا برای هک برنامه تلاش نفرمایید :)",False) End Sub Sub Volley4_OnJsonResponse (JSON As AriaJsonObject) If JSON.Get("purchaseState") = 0 Then ToastMessageShow("پرداخت انجام شد",False) Else ToastMessageShow("پرداخت انجام نشد !!",False) End If End Sub که به اینصورت هستش وقتی که ما درخواست رو فرستادیم یه جیسون به اینصورت میده { "consumptionState": 1, "purchaseState": 0, "kind": "androidpublisher#inappPurchase", "developerPayload": "something", "purchaseTime": 1414181378566 } اولی واسه پرداختای مصرفی یا غیر مصرفیه چیه از اوناس که هر بار میتونی پرداخت کنی مثل خرید سکه از فروشگا واسه بعضی برنامه ها که هرچقدر بخوای میتونی بخری که اگه مقدار این صفر باشه یعنی طرف مصرفش کرده یعنی خریده اگه 1 باشه که نه دومی واسه خریدمون هستش که از این استفاده میکنیم اگه این 0 باشه یعنی خریده اگه 1 باشه یعنی نخریده یا برگشت خورده بعد میایم تو ساب Sub Volley4_OnJsonResponse (JSON As AriaJsonObject) If JSON.Get("purchaseState") = 0 Then ToastMessageShow("پرداخت انجام شد",False) Else ToastMessageShow("پرداخت انجام نشد !!",False) End If End Sub میگیم اگه دومی برابر 0 بود توست بده خریده اگه نبود بگو نخریده بعد یه ساب اضافه داریم واسه ارور Sub Volley4_OnError (Error As String) ToastMessageShow("لطفا برای هک برنامه تلاش نفرمایید :)",False) End Sub طبق گفته بازار اگه طرف خرید رو انجام بده اون مقادیر برگشته میشن و ساب قبلی اجرا میشه اما اگه طرف نخره و با مثلا لاکی پچر پچ کنه وقتی ما میایم درخواست رو میفرستیم یه صفحه ارور 404 یا یه اروری تو شکل جیسون میاد که اریا ولی خطا میگیره یعنی میگه این صفحه وجود نداره و ساب ارورش اجرا میشه که ما میایم تو این ساب میگیم که نخریدی هک کردی ( که یه روز الاف اینجا بودم :|) و تمام شد همین بود به اینصورت میتونین جلوی اون بزغاله هارو بگیرین و یه نکته دیگه هست درباره access token که بعد مدتی میسوزه و باید یکی دیگه بگیرین پس به اینصورت نمیشه که هر 40 روز یه بار اپدیت بدین برنامتونو و کد جدید رو توش قرار بدین میاین این کد رو تو هاستتون قرار میدین و اول از اونجا میخونینش و بعد استفاده میکنین یه قابلیتی هست به نام Cron Job که تو هر هاست یا سروری است که میاد یه لینکی یا یه چیزی رو تو یه زمان معینی اجراش میکنه مثلا میگین هر هفته یه بار یه لینک پی اچ پی رو اجراش کن . میتونین با این قابلیت بیاد بگید که هر 40 روز یه بار بیا اجرا کن و یه اکسس توکن جدید بگیر و جایگزین کن ( که باید کدای php ایشو بنویسین ) یا اینکه خودتون بیاین هر 40 روز دستی بگیرین و جایگزین کنین که امیدوارم یادتون بمونه و اگه با کرون جاب خواستین اموزششو تو همین پست میزارم و فک کنم دیگه تموم شد و چیزی نموند موفق باشید
  13. خیلی ممنون از اقای نیکروان که کدش رو دادن ببخشید کی اموزش api اش رو منتشررر میکنید ؟ رایگانه دیگه یا پولییی ؟ :| ممنون میشم زود منتشر کنین