mehdi1376 44 ارسال شده در 5 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 5 مرداد، ۱۳۹۴ سلام دوستان ، کاربرای زیادی رو دیدم که با محدود کردن آیتم های لیست ویوو به منظور افزودن پرداخت درون برنامه بازار به برنامشون مشکل داشتن این آموزش به صورت ساده برای نرم افزارهای دارای دیتابیس شما هست و شما در ابتدا باید کتابخانه ی پرداخت درون برنامه که در فروشگاه همین انجمن فروخته میشه رو داشته باشید. در ابتدا احتمالا طریقه دریافت کلید RSA از کافه بازار و ساخت یک محصول رو طبق آموزش زیر یاد گرفتید: http://answercenter.ir/topic/3837-%DA%A9%D8%AA%D8%A7%D8%A8%D8%AE%D8%A7%D9%86%D9%87-%D8%AF%D8%B1%D9%88%D9%86-%D9%BE%D8%B1%D8%AF%D8%A7%D8%AE%D8%AA-%D8%A8%D8%A7%D8%B2%D8%A7%D8%B1/ خب ابتدا یه ستون به دیتابیستون اضافه میکنید (مثلا با نام kharid ) و بزارید به صورت پیشفرض همون string (عددی) باشه بعد مثلا اگه کتابتون 20 تا مطلب داره و میخواید فقط 6 تا از اونا رایگان باشه مقدار اون 6 تا مطلب رو توی دیتابیس 1 قرار بدید و مقدار سایر مطالب رو 0 بزارید (اولین تصویر پیوست) دقت کنید که حتما یه ستون دارید که شماره آیتم های لیست ویووتون رو مشخص میکنه که مثلا من اسمش رو id گذاشتم ( تصویر پیوست شده دوم) خب میریم سراغ کد نویسی این قسمت ها توی تاپیکی که آدرسش رو دادم هست ولی منم میگم : بعد از زدن تیک کتابخانه در قسمت Globals کلید RSA رو به صورت زیر وارد میکنیم : Sub Globals Dim pardakht As BillingManager_b4a_org dim key as string = "کلید RSA که از بازار گرفتید رو در این قسمت paste کنید" End Sub میریم سراغ Initialize کردن : Sub Activity_Create(FirstTime As Boolean) pardakht.Initialize("pardakht",key) End Sub حالا طریقه محدود کردن آیتم های لیست ویوو رو میگیم : Sub ListView1_ItemClick (Position As Int, Value As Object) Dim cur As Cursor cur=SQL1.ExecQuery("SELECT * FROM table1") cur.Position=Value-1 If cur.GetInt("kharid")=1 Then StartActivity(matlab) Else Dim p As Int p = Msgbox2("تنها با پرداخت 1500 تومان از سایر مطالب جذاب کتاب لذت ببرید","پرداخت درون برنامه","پرداخت ","انصرف","",LoadBitmap(File.DirAssets ,"pay.png")) If p=DialogResponse.POSITIVE Then pardakht.RequestPayment("inapppay","inapp","pardakht1") End If End If End Sub خب در خصوص کد بالا بگم که با کلیک بر روی هر مطلبی که باز باشه به صفحه matlab میرن و اگه مطلب نیاز به خرید داشته باشه هم یه MessageBoxبراشون نمایش داده میشه و میگه برای مشاهده سایر مطالب باید مبلغی رو پرداخت کنید و اگه روی گزینه پرداخت کلیک کنن صفحه پرداخت براشون باز بشه و اینکه اسم table من هم توی دیتابیس table1 وهمچنین اسم محصول من توی بازار inapppay هستش که شاید برای شما فرق داشته باشه (تصویر پیوست شده سوم ) در قسمت آخر میگیم که اگه پرداخت کرد سایر مطالب هم براش نمایش داده بشه Sub pardakht_PurchaseCompleted (Success As Boolean, Product As Purchase) Dim cur As Cursor cur=SQL1.ExecQuery("SELECT * FROM table1") If Success=True Then For j=0 To cur.RowCount SQL1.ExecNonQuery("update table1 set kharid=1 where id="&j) Next ToastMessageShow("پرداخت با موفقیت انجام شد",False) Else ToastMessageShow("پرداخت انجام نشد",False) End If End Sub این کد میگه که اگه پرداخت به درستی انجام شد مطالبی که نیاز به خرید داشتن باز بشن و اگه به درستی انجام شد هم یه ToastMessageShow نمایش بده و بگه پرداخت انجام نشده -------------------------------------------------------- پی نوشت : سعی کردم به ساده ترین صورت توضیح بدم ! امیدوارم مفید واقع بشه همچنین اطلاعات داده شده مربوط به برنامه اولین ها هست که توی امضام دربارش توضیح دادم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
discoversh 54 ارسال شده در 13 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 13 مرداد، ۱۳۹۴ راهنمایی لطفا.میخام سه موضوع اول لیست ویو قابل استفاده و بقیه محدود به پرداخت درون برنامه باشه. Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("fehrest") pardakht.Initialize("pardakht","key") lv.SingleLineLayout.Label.Gravity = Gravity.CENTER lv.SingleLineLayout.Label.TextSize = 15dip lv.SingleLineLayout.ItemHeight = 60dip lv.SingleLineLayout.Label.TextColor=Colors.black Dim lbl As Label lbl= lv.SingleLineLayout.Label lbl.Typeface=Typeface.LoadFromAssets("font66.TTF") Dim backlist As BitmapDrawable backlist.Initialize(LoadBitmap(File.DirAssets,"dsfd.jpg")) If FirstTime =True Then parser.Initialize End If Dim read As InputStream read = File.OpenInput (File.DirAssets,"list.xml") parser.Parse (read,"Parser") read.Close End Sub Sub Parser_EndElement (uri As String , name As String , text As StringBuilder) If parser.Parents.IndexOf("list")>-1 Then If name ="Fasl" Then fasl= text.ToString Else If name="Name_fasl" Then name_fasl=text.ToString Else If name="File_name" Then url=text.ToString End If End If If name = "list" Then lv.AddSingleLine2(" "& fasl, url) End If End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub lv_ItemClick (Position As Int, Value As Object) pardakht.RequestPayment("lollipoptaste","inapp","pardakht1") If (Position>3) AND (File.Exists(File.DirInternal,"fullversion.txt")=False) Then Msgbox("نسخه دمو","پیام") filename=Value StartActivity("motalee") Else ToastMessageShow("نسخه طلایی",False) End If End Sub Sub pardakht_PurchaseCompleted (Success As Boolean, Product As Purchase) If Success = True Then File.WriteString(File.DirInternal,"fullversion.txt","true") ToastMessageShow("shod","false") Else ToastMessageShow("naaashod","false") End If End Sub لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Kazem Forghani 2,927 ارسال شده در 13 مرداد، ۱۳۹۴ اشتراک گذاری ارسال شده در 13 مرداد، ۱۳۹۴ می تونید به این صورت عمل کنید : کد زیر رو در ساب آیتم کلیک بگذارید . If Position >=3 Then Msgbox("باید بخرید","") StartActivty("pardakht") End If لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
73amirrrco 1 ارسال شده در 15 مرداد، ۱۳۹۷ اشتراک گذاری ارسال شده در 15 مرداد، ۱۳۹۷ سلام اگه چند تا محصول داشته باشیم که با خرید هرکدوم عملیات خاصی بخواد انجام بشه تو ساب pardakht_PurchaseCompleted چطوری باید کد رو بنویسیم لطفا راهنمایی کنید خیلی لازم دارم لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
seyed ali 7 ارسال شده در 16 مرداد، ۱۳۹۷ اشتراک گذاری ارسال شده در 16 مرداد، ۱۳۹۷ بعد از If Success=True Then تا else هر کدی که میخوای وقتی پرداخت انجام شد اجر بشه رو بنویس لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.