Ane پرداخت درون برنامه ای کافه بازار

شروع موضوع توسط mmz2006 ‏16 اکتبر 2015 در انجمن ارسال نمونه کار

  1. mmz2006

    mmz2006 Active Member

    ارسال‌ها:
    131
    تشکر شده:
    121
    امتیاز دستاورد:
    43
    با سلام و عرض ادب نسبت به دوستان و اساتید گرامی

    افزونه و آموزش پرداخت درون برنامه ای برای کافه بازار رو تقدیم می کنم:



    آموزش کامل تصویری در آپارات با حجم تقریبا 204 مگ
    http://www.aparat.com/v/Qadeg

    برای دیدن کیفیت بهتر ، هنگام پخش روی HD کلیک کنید
     

    پیوست ها:

    آخرین ویرایش: ‏31 دسامبر 2015
    نوشته شده توسط mmz2006 در ‏16 اکتبر 2015
    پروشات اير، BehrouzPc، iloveflash و 8 نفر دیگر از این ارسال تشکر کرده اند.
  2. akherat

    akherat مدیر انجمن

    ارسال‌ها:
    594
    تشکر شده:
    661
    امتیاز دستاورد:
    93
    دوستان تست کنید
    اگر اوکی بود استیکیش کنیم
     
    نوشته شده توسط akherat در ‏19 اکتبر 2015
    mohamadmahd و mmz2006 از این پست تشکر کرده اند.
  3. Fanous

    Fanous Well-Known Member

    ارسال‌ها:
    761
    تشکر شده:
    539
    امتیاز دستاورد:
    93
    سلام و تشکر فراوان
    مدت زیادی نبودم ،با دیدن عنوان تاپیک سورپرایز شدم
    میخواستم بدونم آیا خودتون با ابن ane برنامه ای با پرداخت درون برنامه نوشتین که الان توی بازار باشه؟
    چون فعلا نمی تونم تستش کنم ، میخواستم عملکردش رو ببینم
     
    نوشته شده توسط Fanous در ‏31 اکتبر 2015
    mohamadmahd و mmz2006 از این پست تشکر کرده اند.
  4. mmz2006

    mmz2006 Active Member

    ارسال‌ها:
    131
    تشکر شده:
    121
    امتیاز دستاورد:
    43
    سلام و ممنون از لطفتون

    فعلا برنامه مناسبی نداشتم که تو بازار بزارم
    ولی برای تست همونطور که تو آموزش هست ، می تونید برنامه رو آپلود کنید تو کافه بازار و پرداخت درون برنامه ای رو تست کنید(فقط محض اطلاع بگم ، بعد از بارگذاری برنامه ای که پرداخت درون برنامه داره حتی اگه اونو حذف و بایگانی کنید بازم اسم پکیجش تو لیستتون می مونه و محصولاتی رو هم که براش تعریف می کنید ، همچنین قابل حذف نیست ، فقط میشه غیر فعالش کرد).

    بعد از انجام تست باید برنامه نهایی رو در قسمت "بسته ها" بسته جدید ارسال کنید.

    ضمنا برنامه ای که می خواین تست کنید نباید (app ID) ش هم نام این فایل سمپلی که من گذاشتم باشه چون (app ID) هر برنامه ، توی کافه بازار ،منحصر به فرد است.
     
    نوشته شده توسط mmz2006 در ‏31 اکتبر 2015
    mohamadmahd، iloveflash و Fanous از این ارسال تشکر کرده اند.
  5. Fanous

    Fanous Well-Known Member

    ارسال‌ها:
    761
    تشکر شده:
    539
    امتیاز دستاورد:
    93
    بسیار ممنونم از فیلم آموزشی که قرار دادین
    ایشالا بچه های فلش کار نهایت استفاده رو از این آموزش ببرن
    امیدوارم همیشه موفق باشین
     
    نوشته شده توسط Fanous در ‏1 نوامبر 2015
    mohamadmahd و mmz2006 از این پست تشکر کرده اند.
  6. frhd_120

    frhd_120 New Member

    ارسال‌ها:
    4
    تشکر شده:
    4
    امتیاز دستاورد:
    3
    بسیار عالی واقعا ممنونم . من در اپلیکیشن خودم دارم ازش استفاده می کنم . خوشحالم که بالاخره یه نفر این کارو انجام داد .
     
    نوشته شده توسط frhd_120 در ‏3 نوامبر 2015
    mohamadmahd و mmz2006 از این پست تشکر کرده اند.
  7. frhd_120

    frhd_120 New Member

    ارسال‌ها:
    4
    تشکر شده:
    4
    امتیاز دستاورد:
    3
    فقط یه سوالی دارم چرا موقع init حتی اگه به اینترنت وصل نباشیم initSuccess می گیریم مگه publicKey نباید با بازار چک بشه .
    همچنین من publickey خودمو تغییر دادم و بعد اقدام به خرید تستی کردم و متاسفانه خرید انجام شد ولی بعدش که restore گرفتم برنامه exit شد . یعنی یک بار خرید با این روش انجام میشه ولی در خرید های بعدی جلوگیری میشه
     
    آخرین ویرایش: ‏3 نوامبر 2015
    نوشته شده توسط frhd_120 در ‏3 نوامبر 2015
    mohamadmahd از این پست تشکر کرده است.
  8. mmz2006

    mmz2006 Active Member

    ارسال‌ها:
    131
    تشکر شده:
    121
    امتیاز دستاورد:
    43
    init در واقع دو تا کار انجام می ده 1:تست هماهنگی نسخه و 2:پاس دادن (پابلیک کی )و اون پیام بازگشتی رو اگر دقت کنید میگه (InAppBilling supported) که برای ساپورت شدن نسخه هست ولی اون (پابلیک کی) فعلا نگه داشته می شه تا توی ریستور و خرید ازش استفاده بشه.پس فعلا نیازی به اتصال به اینترنت نداره.

    اما اگر بعد از دکمه کانکت دکمه ریستور رو بزنید و به اینترنت وصل نباشید بعد از چند لحظه پیام (restore Failed) رو بازگشت می ده.

    اما در مورد پابلیک کی :
    این کلید RSA،امضایی، متعلق به نرم افزار شماست و اگر امضای اصل استفاده نشه ، پیام بازگشتی موفقیت آمیز نیست ولی در واقع خرید انجام میشود و در تراکنش ها هم ثبت می شود.
    اما در ریستور، بدون امضای اصل نمیشه ریستور گرفت و به اطلاعات خرید در مورد اون محصول دست پیدا کرد.

    به نظر من، صرف این کلید ، خیلی اهمیت و خطری نداره.
     
    آخرین ویرایش: ‏7 نوامبر 2015
    نوشته شده توسط mmz2006 در ‏7 نوامبر 2015
    mohamadmahd از این پست تشکر کرده است.
  9. mmz2006

    mmz2006 Active Member

    ارسال‌ها:
    131
    تشکر شده:
    121
    امتیاز دستاورد:
    43
    البته در مورد کلید rsa از کافه بازار سوال کردم اونا به من اینطور جواب دادند:


    سلام،
    توسعه‌دهندهٔ گرامی، این کلید برای چک کردن امضاء به کار می‌رود. در پاسخ هر خرید یک امضاء نیز فرستاده می‌شود که رمزشدهٔ پاسخ اصلی با کلید توسعه‌دهنده است. چک کردن این امضأ باعث جلوگیری از خریدهای جعلی می‌شود.
     
    نوشته شده توسط mmz2006 در ‏9 نوامبر 2015
    mohamadmahd از این پست تشکر کرده است.
  10. frhd_120

    frhd_120 New Member

    ارسال‌ها:
    4
    تشکر شده:
    4
    امتیاز دستاورد:
    3
    ممنون از پیگیری هایی که داشتین . الان چند سوال برای من مطرح ممنون می شم اگه کسی پاسخ بده
    1. آیا اگر با کد جاوا اقدام به خرید درون برنامه ای کنیم اگر زمانی که به اینتنرنت وصل نیستیم کد init را اجرا کنیم یاز هم جواب مثبت می گیریم؟
    2.و باز هم اگر با کد جاوا اقدام به خرید درون برنامه ای کنیم و کد rsa را تغییر دهیم و اقدام به خرید کنیم می شود خرید کرد؟
    3.من خیلی سعی کردم ane pozirk رو جوری تغییر دهم که به کافه بازار وصل شه ولی متاسفانه موفق نشدم به طور مثال در فایل IabHelper.java در خط های
    Intent serviceIntent = new Intent("com.android.vending.billing.InAppBillingService.BIND");
    serviceIntent.setPackage("com.android.vending");
    کد اتصال به بازار را گذاشتم و با دستورات command prompt ویندوز تمام فایل های جاوای داخل پوشه های android و pozirk رو به class. تبدیل کردم و باز هم با دستورات command prompt
    فایل jar و سپس ane رو ساختم با این حال موفق نشدم آیا مسیری که رفتم درست بوده؟؟ ممنون میشم اگه راهنمایی حتی مختصر داشته باشید
     
    نوشته شده توسط frhd_120 در ‏28 نوامبر 2015
    mohamadmahd از این پست تشکر کرده است.
  11. mmz2006

    mmz2006 Active Member

    ارسال‌ها:
    131
    تشکر شده:
    121
    امتیاز دستاورد:
    43
    سلام

    در مورد شماره 1 و 2 باید خدمتتون عرض کنم ، که من این دو مورد رو با کد جاوایی که کافه بازار نمونه گذاشته بود ، درون eclipse تست کردم و کاملا مثل ane خودمون عمل کرد یعنی init نیازی به اینترنت نداشت و بدون کلید RSA اصلی ، میشه خرید کرد.

    اما مورد 3 باید بگم این ane pozirk مشکل داره ، حتی اگر شما خود همین ane رو توی پروژه تون ایمپورت کنید نمی تونید به درگاه گوگل منتقل بشید(که این ane برای مارکت گوگل طراحی شده) رفع ایرادات کدها خیلی برای من زمان برد تا جایی که این سمپل رو کنار گذاشتم روی چندین سمپل دیگه کار کردم خیلی وقتا ناامید شدم ولی به خواست خدا ، نهایتا تونستم این ane رو آماده کنم.
     
    نوشته شده توسط mmz2006 در ‏29 نوامبر 2015
    mohamadmahd و frhd_120 از این پست تشکر کرده اند.
  12. shaer_bisvad

    shaer_bisvad New Member

    ارسال‌ها:
    4
    تشکر شده:
    2
    امتیاز دستاورد:
    1
    یه مشکلی که تو سورس پرداخت درون برنامه ای هست یا بهتره مشکلی که من باهاش داشتم این بود که کدی که داخل اکتویتی درست اجرا می شد ، داخل یه فرگمنت که به View pager متصل هست مکافات داشت یا اجرا نمی شد ، یا موقع اجرا خطا داشت ..
     
    نوشته شده توسط shaer_bisvad در ‏29 نوامبر 2015
    mohamadmahd از این پست تشکر کرده است.
  13. samangeraphic

    samangeraphic Active Member

    ارسال‌ها:
    340
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    سلام
    ممنون از این آموزش
    من یه چیزو متوجه نشدم
    در واقع من برای فروش باید دو نسخه از اپلیکیشنم آپلود کنم؟
    یه نسخه همینی که کد rsa و چیزای دیگه رو توش زدم و یه نسخه هم نسخه نهایی و فول ورژن کارو؟
    چون تو این آموزش معلوم نشد اول کدومو باید آپلود کنیم و کاربر بعد از خرید چطوری به نسخه نهایی ما دست پیدا میکنه
    لطفا اینم توضیح بدید تا دیگه تکمیل بشه
    ممنون
     
    نوشته شده توسط samangeraphic در ‏2 آوریل 2016
    mohamadmahd از این پست تشکر کرده است.
  14. Fanous

    Fanous Well-Known Member

    ارسال‌ها:
    761
    تشکر شده:
    539
    امتیاز دستاورد:
    93
    سلام
    شما می تونین به 2 روش کار رو انجام بدین:

    1 - ساخت ورژن تست اپلیکیشن و فقط آپلود آن در بازار ( نیازی نیست دکمه درخواست انتشار رو بزنین ، کافیه فقط در حالت بارگذاری شده بمونه )
    دریافت کلید RSA و تعریف آیتمهای درون برنامه ای با قیمت 0
    تست برنامه
    در صورت موفقیت آمیز بودن تستها ، ساخت ورژن اصلی برنامه با همون id قبل و آپلود آن در بازار با ورژنی بالاتر از نسخه تست و دکمه درخواست انتشار رو بزنین
    تغییر قیمت آیتمهای درون برنامه ای از 0 به مبلغ مورد نظرتون

    2 - ساخت ورژن تست اپلیکیشن و فقط آپلود آن در بازار ( نیازی نیست دکمه درخواست انتشار رو بزنین ، کافیه فقط در حالت بارگذاری شده بمونه )
    دریافت کلید RSA و تعریف آیتمهای درون برنامه ای با قیمت 0
    تست برنامه
    در صورت موفقیت آمیز بودن تستها ، ساخت ورژن اصلی برنامه با یک id جدید و آپلود آن در بازار و دریافت کلید RSA جدید و تعریف آیتمهای درون برنامه ای با قیمت مورد نظر و دکمه درخواست انتشار رو بزنین
    در روش دوم باید کلید جدید رو توی برنامه تون تغییر بدین ، همچنین شناسه کالاها باید کنترل بشن که با قبلی ها یکی هستن یا نه

    موفق باشین
     
    نوشته شده توسط Fanous در ‏2 آوریل 2016
    mohamadmahd از این پست تشکر کرده است.
  15. samangeraphic

    samangeraphic Active Member

    ارسال‌ها:
    340
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    ممنون از آموزشتون
    یه سوال مهم
    وقتی یکبار خرید انجام میشه و آیتم مورد نظر باز میشه واسه کاربر چیکار کنیم که توش سیو بمونه و هردفعه نخواد رو دکمه خرید کلیک کنه تا آیتم باز بشه براش
    درسته برای دفعه بعدی هزینه ای از کاربر نمیخواد اما ما باید از چه کدی استفاده کنیم که همون اول چک کنه اگه کاربر اون آیتمو به صورت درون برنامه ای خریده واسش باز باشه دیگه از اون به بعد
     
    نوشته شده توسط samangeraphic در ‏3 آوریل 2016
    mohamadmahd از این پست تشکر کرده است.
  16. samangeraphic

    samangeraphic Active Member

    ارسال‌ها:
    340
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    کسی نمیدونه؟
    :sad:
     
    نوشته شده توسط samangeraphic در ‏3 آوریل 2016
  17. Fanous

    Fanous Well-Known Member

    ارسال‌ها:
    761
    تشکر شده:
    539
    امتیاز دستاورد:
    93
    سلام
    پس از اینکه خرید با موفقیت انجام شد ، بوسیله یک sharedObject اونو سیو کنین
    بعد توی برنامه قبل از ورود به بخش موردنظر ، چک کنین ببینین که آیا قبلا این متغیر ذخیره شده یا نه ؟
    اگر شده یعنی کاربر قبلا خرید رو انجام داده و دیگه نیازی نیست که خرید بکنه و مراحل بعد بهش نمایش داده بشه
     
    نوشته شده توسط Fanous در ‏4 آوریل 2016
  18. samangeraphic

    samangeraphic Active Member

    ارسال‌ها:
    340
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    سلام
    ممنون
    با shareobject انجام دادم درست شد
    فقط یه مشکل دیگه که بنظرم خیلی مهمه
    وقتی اپلیکیشنو روی گوشی نصب میکنم خیلی دیر اجرا میشه برنامه
    تقریبا 15 ثانیه صفحه سیاهه
    بعدش تازه برنامه میاد بالا
    اون فایل نمونه هم که تو اولین پست دوستمون برای نمونه گذاشته همینه
    اونم روی گوشی دیر میاد بالا
    به نظرتون مشکل از فایل swc یا ane نیست؟؟؟!
     
    نوشته شده توسط samangeraphic در ‏5 آوریل 2016
  19. Fanous

    Fanous Well-Known Member

    ارسال‌ها:
    761
    تشکر شده:
    539
    امتیاز دستاورد:
    93
    سلام
    به احتمال 99% فایل شما از طریق debug ایجاد شده
    فایل نهایی رو از طریق publish ایجاد کنین
    موفق باشین
     
    نوشته شده توسط Fanous در ‏5 آوریل 2016
  20. samangeraphic

    samangeraphic Active Member

    ارسال‌ها:
    340
    تشکر شده:
    51
    امتیاز دستاورد:
    28
    دقیقا مشکل همین بود
    مرسی از لطفت
    حل شد
    :rose:
     
    نوشته شده توسط samangeraphic در ‏5 آوریل 2016
    Fanous از این پست تشکر کرده است.

به اشتراک بگذارید