-
تعداد ارسال ها
4,060 -
تاریخ عضویت
-
آخرین بازدید
-
روز های برد
773
نوع محتوا
نمایه ها
فروشگاه
تالارهای گفتگو
بخش دریافت
پست ها ارسال شده توسط محمدرضا شاهپیری
-
-
۱ ساعت قبل، امیرحسین قاسمی گفته است:
سلام
تفاوت این نسخه با نسخه قبلی چی هست؟
من برای برنامه خودم چند روز قبل با نسخه قدیمی کتابخونه آپدیت دادم. ممکنه مشکلی پیش بیاد؟
نسخه قبل مشکل داشت و اینکه روی نسخه ۱.۴ مایکت بود. نسخه فعلی مشکلات رفع شده و به نسخه ۱.۶ که نسخه آخر مایکت هست به روز شده. حتما به نسخه جدید آپدیت کنید
- 1
-
در ۱۴۰۲/۶/۲۷ در ۰۴:۲۲، MrMedia گفته است:
سلام و ممنون بابت کتابخونه خوبتون
من برای مصرف خرید مشکل دارم و از روش هایی که در این پست گفتید هم استفاده کردم.
ولی به خطا میخورم و به محض اجرای ساب
Private Sub myket_onIabPurchaseFinished(result As IabResult,purchase As Purchase)
به خطای زیر بر میخورم.
و جوری که متوجه شدم مقدار خالی به این ساب بر میگرده، به خط 4 توجه کنید.
در ضمن اگه زیر پستتون هم از لینک حامی باش یا پرداخت آزاد برای کمک مالی استفاده کنید خیلی خوب میشه تا همه بتونن در صورت تمایل به پروژه کمک کنن
سلام و درود. کتابخانه به روز شد نسخه جدید رو دریافت کنید
- 1
- 2
-
۴ ساعت قبل، yare۳۱۳ yare۳۱۳ گفته است:
سلام بنده با استفاده از کتابخانه persianFastNetwork می خوام یک سری اطلاعات که داخل یک map ریخته شده را به یک فایل php داخل هاست بفرستم که داخل دیتابیس Record کنه لذا باید از post استفاده کنم اما چطور پارمتر های map را برای ارسال به متغییر persianFastNetwork بریزم، در واقع روش post کردن با این کتابخانه را می خوام.
کد مثال:
map.Initialize
map.Clear
map.Put("name",edittextN_name.Text)
map.Put("phone",edittextN_num.Text)
map.Put("password",edittextN_pass.Text)و ارسال اینها
سلام و درود. این موارد توی آموزشها هست
Dim post As PostRequest post=prfn.BuildPostQuery("url","tag") post.addParametrs("ke1","value1") post.addParametrs("ke2","value2") post.addParametrs("ke3","value3")
-
32 دقیقه قبل، batman123 گفته است:
استاد برای من موقع کامپایل این خطارو میده:
چی کارش کنم؟!
نسخه بیسیک رو حتما به روز کنید. همینطور sdk و فایلهای extra رو از سایت مرجع بگیرید و سمپلی که گذاشتم رو تست کنید
- 1
-
۶ ساعت قبل، batman۱۲۳ گفته است:
سلام.
ببخشید استاد اگه این تغغیراتی که توی آموزش گفتید رو در پوشه های sdk ایجاد کنیم، برای کامپایل برنامه های دیگمون مشکلی ایجاد نمیشه؟
سلام. نسخه 3 رو دانلود کنید و همچنین نسخه b4a و sdk هم نسخه آخر باشه فک کنم دیگه نیازی به تغییر sdk نیست
- 1
-
19 ساعت قبل، rzh mrz گفته است:
سلام من خرید کردم ولی لینک دانلود دریافت نکردم باید چکار کنم
از منوی بالای انجمن قسمت فروشگاه و مدیریت خرید دانلود کنید
-
هم اکنون، MrMedia گفته است:
چرا تو حالت wait for کار نمیکنه؟ بعدا اضافه میشه به کتابخونه؟
این کتابخونه به زودی با کتابخوته retrofit جایگزین میشه که به مراتب قدرتمندتره و امکاناتش بیشتره.
- 1
-
15 ساعت قبل، MrMedia گفته است:
سلام من از آخرین نسخه کتابخونه استفاده میکنم ولی متد
WithTimeOut
برام کار نمی کنه
کدم هم اینه
Dim fn As FastNetSetup Dim Request As PersianFastNetwork fn.SetupFastNet.WithSSL.WithTLS.WithCookieManager.WithTimeOut(10000).Build Request.initialize("fn") GetRequest = Request.BuildGetQuery("sample_url","sample_tag") GetRequest.addHeader("sample_header")).executRequest wait For fn_onSucsess(value As String , Tag As Object ) 'my code... Sub fn_onError(Error As ResponseError , Tag As Object) Log(Error.ErrorMsage) End Sub
این مشکل باعث شده لودینگ برنامه که قبل درخواست فرستادن نشون میدم و تایم اوت کار نمیکنه نمی تونم مخفیش کنم و لودینگ دائما بچرخه و همین باعث شده کافه بازار به برنامم اشکال بگیره
سلام و درود. از wait For استفاده نکنید. متدهای success و error رو به صورت ایونت پیاده کنید. تایم اوت رو هم بالا بزارید یک دیقه معمولا میزارن
-
19 ساعت قبل، مهدی عزیزی گفته است:
همچنان ارور میده و برنامه بسته میشه
ارور:
*** Service (starter) Create *** ** Service (starter) Start ** ** Activity (main) Create, isFirst = true ** ** Activity (main) Resume ** main_button1_click (java line: 368) android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@3da9f19 -- permission denied for this window type at android.view.ViewRootImpl.setView(ViewRootImpl.java:591) at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:310) at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:85) at com.toast.libs.AchievementUnlocked.buildAchievement(AchievementUnlocked.java:477) at com.toast.libs.AchievementUnlocked.build(AchievementUnlocked.java:304) at com.toast.core.AriaToast.Build(AriaToast.java:78) at b4a.example.testt.main._button1_click(main.java:368) at java.lang.reflect.Method.invoke(Native Method) at anywheresoftware.b4a.BA.raiseEvent2(BA.java:213) at anywheresoftware.b4a.BA.raiseEvent2(BA.java:197) at anywheresoftware.b4a.BA.raiseEvent(BA.java:193) at anywheresoftware.b4a.objects.ViewWrapper$1.onClick(ViewWrapper.java:80) at android.view.View.performClick(View.java:5204) at android.view.View$PerformClick.run(View.java:21153) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5420) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
toast.requestDrawPermission
از روش زیر استفاده کنید. اول متد زیر رو به اکتیویتی اضافه کنید
#if java import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Build; import android.provider.Settings; public void requestDrawPermission() { Context context = BA.applicationContext; if (Build.VERSION.SDK_INT > 23 && !Settings.canDrawOverlays(context)) { Intent intent = new Intent( Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + context.getPackageName()) ); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } } #end if
حالا کتابخونه javaobject رو تیک بزنید و به شکل زیر متد رو صدا بزنید
Dim jo As JavaObject jo.InitializeContext.RunMethod("requestDrawPermission",Null)
- 1
- 1
-
9 ساعت قبل، مهدی عزیزی گفته است:
سلام مجدد
هنگام کمپایل اروری ندارم اما توی برنامه موقعی که نمایش نوست میرسه بسته میشه
این هم کد:
#Region Project Attributes #ApplicationLabel: B4A Example #VersionCode: 1 #VersionName: 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: unspecified #CanInstallToExternalStorage: False #End Region #Region Activity Attributes #FullScreen: False #IncludeTitle: True #End Region Sub Process_Globals End Sub Sub Globals Dim toast As AriaToast End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Layout") End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub Button1_Click toast.Initialize("toast").Title("test").Icon(LoadBitmap(File.DirAssets,"caution1.png")).Show End Sub
شما متد Build رو صدا نزدین. قبل از نمایش باید این متد رو صدا بزنید که ویوها ساخته بشه. کدتون به شکل زیر باید باشه
toast.Initialize("toast").Title("test").Icon(LoadBitmap(File.DirAssets,"caution1.png")).Build.Show
قبل از همه چیز هم باید متد زیر رو صدا بزنید و دسترسی ترسیم رو بگیرید
toast.requestDrawPermission
- 1
-
در ۱۴۰۲/۵/۱۸ در 18:50، مهدی عزیزی گفته است:
سلام و خسته نباشید
اول ممنونم از شما بابت این کتابخانه عالی
اما من نمیتونم ازش استفاده کنم برنامه هنگام اجرا فورس کلوز میکنه
لطفا ممکنه یک سورس نمونه که تست شده ارسال بفرمایید
سلام. چه خطایی دریافت میکنید؟
-
هم اکنون، Amir - B گفته است:
متشکرم
بله من گشتم ولی تو کتابخونه من اصلا متد disableItemChangeAnimation وجود نداره.
نسخه کتابخونه 4.6 هست . برای شما هست؟
آخرین نسخه موجود 5.11 هست از پنل دانلود و جایگزین کنید
- 1
-
13 ساعت قبل، Amir - B گفته است:
سلام استاد
آیا این امکان وجود داره از DsTabLayout برای ویوپیجر ریسایکلر ویو استفاده کنیم؟
و استاد در مورد سوال قبلیم، من همچنان disableItemChangeAnimation رو نتونستم پیدا کنم. چیکار باید انجام بدم؟
ممنون
سلام و درود. از اونجایی که DsTabLayout از نسخه ساپورت استفاده میکنه و کتابخونه قدیمی و منسوخ شده هست و ریسایکلر ویو نسخه androidX هست احتمال اینکه تداخل داشته باشن خیلی زیاده. من که اصلا نتونستم از DsTabLayout استفاده کنم چون خطا میده و کامپایل نمیشه. اما اگه تداخل نداشته باشن به نظرم میتونید با هم استفاده کنید. به دوتا متد زیر توجه کنید
Private Sub prrecycler_onScrollStateChanged(newState As Int) If newState==prRecycler.SCROLL_STATE_IDLE Then If prRecycler.AdapterPosition<>-1 Then dsTabLayout.SelectTab(prRecycler.AdapterPosition) End If End If End Sub Private Sub dstab_TabSelected(Index As Int, SelectedTab As String, Tag As Object) prRecycler.scrollToPosition(Index) End Sub
درمورد سوال دوم هم که عرض شد. متد رو باید مستقیم از خود ریسایکلر صدا بزنید
prRecycler.disableItemChangeAnimation
- 1
-
سلام ودرود. از منوی بالای انجمن قسمت فروشگاه مدیریت خرید رو انتخاب کنید
-
سلام به همه برنامه نویسای عزیز. بعد مدتها یه آموزش بزاریم کیف کنیم
همونطور که مطلع هستید بازار خیلی وقته درون پرداخت رو با پولکی انجام میده و این کتابخونه مخصوص کاتلین هست و به راحتی نمیتونید اونو مستقیم توی جاوا استفاده کنید. برا همین یه کلاس واسط که به اصطلاح از دیزاین پترن پ * ر * و * ک *س * ی استفاده شده برای دوستان آماده کردیم که راحت بتونن اونو توی جاوا استفاده کنن. دقت کنید که حتما باید کاتلین توی پروژه ست شده باشه. کلاس کاتلین زیر رو به پروژه اضافه کنید و اسمشو PoolakeyWrapper بزارید.
package com.example.myapplication import android.content.Context import androidx.activity.result.ActivityResultRegistry import ir.cafebazaar.poolakey.Connection import ir.cafebazaar.poolakey.Payment import ir.cafebazaar.poolakey.config.PaymentConfiguration import ir.cafebazaar.poolakey.config.SecurityCheck import ir.cafebazaar.poolakey.entity.PurchaseInfo import ir.cafebazaar.poolakey.request.PurchaseRequest /** * Created by Mohamadreza Shahpiri on 6/18/2023. * Answercenter.ir *************************************************** */ class PoolakeyWrapper( publicKey: String, context: Context, ) { private val securityCheck = SecurityCheck.Enable(rsaPublicKey = publicKey) private val paymentConfig = PaymentConfiguration(localSecurityCheck = securityCheck) private val payment = Payment(context = context.applicationContext, config = paymentConfig) private var connection:Connection?=null fun connect(connectionCallback: ConnectionCallback){ connection=payment.connect { connectionSucceed{ connectionCallback.connectionSucceed() } connectionFailed { connectionCallback.connectionFailed(it) } disconnected { connectionCallback.disconnected() } } } fun purchaseProduct(registry: ActivityResultRegistry,request: PurchaseRequest,purchaseCallback: PurchaseCallback){ payment.purchaseProduct(registry,request){ purchaseFlowBegan { purchaseCallback.purchaseFlowBegan() } failedToBeginFlow { purchaseCallback.failedToBeginFlow(it) } purchaseSucceed { purchaseCallback.purchaseSucceed(it) } purchaseCanceled { purchaseCallback.purchaseCanceled() } purchaseFailed { purchaseCallback.purchaseFailed(it) } } } fun subscribeProduct(registry: ActivityResultRegistry,request: PurchaseRequest,purchaseCallback: PurchaseCallback){ payment.subscribeProduct(registry,request){ purchaseFlowBegan { purchaseCallback.purchaseFlowBegan() } failedToBeginFlow { purchaseCallback.failedToBeginFlow(it) } purchaseSucceed { purchaseCallback.purchaseSucceed(it) } purchaseCanceled { purchaseCallback.purchaseCanceled() } purchaseFailed { purchaseCallback.purchaseFailed(it) } } } fun consumeProduct(purchaseToken: String,consumeCallback: ConsumeCallback){ payment.consumeProduct(purchaseToken){ consumeSucceed { consumeCallback.consumeSucceed() } consumeFailed { consumeCallback.consumeFailed(it) } } } fun getPurchasedProducts(queryCallback: QueryCallback){ payment.getPurchasedProducts { querySucceed { queryCallback.querySucceed(it) } queryFailed { queryCallback.queryFailed(it) } } } fun getSubscribedProducts(queryCallback: QueryCallback){ payment.getSubscribedProducts { querySucceed { queryCallback.querySucceed(it) } queryFailed { queryCallback.queryFailed(it) } } } fun disconnect(){ connection?.disconnect() } interface ConnectionCallback{ fun connectionSucceed() fun connectionFailed(throwable:Throwable) fun disconnected() } interface PurchaseCallback{ fun purchaseFlowBegan() fun failedToBeginFlow(throwable:Throwable) fun purchaseSucceed(info: PurchaseInfo) fun purchaseCanceled() fun purchaseFailed(throwable:Throwable) } interface ConsumeCallback{ fun consumeSucceed() fun consumeFailed(throwable:Throwable) } interface QueryCallback{ fun querySucceed(items:List<PurchaseInfo>) fun queryFailed(throwable:Throwable) } }
حالا توی جاوا به شکل زیر ازش استفاده کنید.
مثلا برای اینشیالایز.
PoolakeyWrapper poolakeyWrapper=new PoolakeyWrapper("publicKey",this); poolakeyWrapper.connect(new PoolakeyWrapper.ConnectionCallback() { @Override public void connectionSucceed() { } @Override public void connectionFailed(@NonNull Throwable throwable) { } @Override public void disconnected() { } });
و برای خرید
PurchaseRequest purchaseRequest=new PurchaseRequest( "productId","payload","dynamicPriceToken" ); poolakeyWrapper.purchaseProduct(getActivityResultRegistry(), purchaseRequest, new PoolakeyWrapper.PurchaseCallback() { @Override public void purchaseFlowBegan() { } @Override public void failedToBeginFlow(@NonNull Throwable throwable) { } @Override public void purchaseSucceed(@NonNull PurchaseInfo info) { } @Override public void purchaseCanceled() { } @Override public void purchaseFailed(@NonNull Throwable throwable) { } });
بقیه متدها رو هم به راحتی میتونید استفاده کنید.
مانا باشید
- 1
- 1
-
در ۱۴۰۲/۳/۱۴ در 23:09، Amir - B گفته است:
سلام استاد
ببخشید دو سوال داشتم
چطور میتونیم خاکستری شدن رنگ هر ایتم ریسایکلر ویو موقع پرس کردن هر ایتم رو تغییر بدیم؟ یا خاکستری شدنش رو غیر فعال کنیم؟
چطور میتونیم پوزیشن اسکرول ریسایکلر ویو رو بدست بیاریم؟
ممنون
سلام ودرود.
درمورد مشکل اول دستور disableItemChangeAnimation رو تست کنید و در مورد مسأله دوم دستور AdapterPosition
- 1
-
7 ساعت قبل، batman123 گفته است:
ممنون میشم جواب بدید
سلام و درود. از قسمت مدیریت خرید میتونید دانلود کنید.
- 1
-
22 ساعت قبل، Amir - B گفته است:
سلام استاد شاهپیری
ببخشید لینک آموزش درسته؟
من نمیتونم دریافتش کنم
سلام و درود. لینک درسته عزیز. پارس پسک پک به حجم فایل گیر میده که باید پلن پولی برای cdn فعال بشه. احتمالا cdn رو ببریم روی کلودفلر یا فایلهای دانلودی رو جابه جا کنیم
-
23 ساعت قبل، AkbarDeveloper2022 گفته است:
من کتابخونه رو خریدم اما تو ایمیلی که برام ارسال شده لینک دانلود ارسال نشده
سلام و درود. از منوی فروشگاه مدیریت خرید دانلود کنید.
-
12 ساعت قبل، Alizadeh.arash گفته است:
با سلام موقع بیلد کردن برنامه پیغام :
Maven artifact not found: androidx.activity/activity-compose-samples
Source: PersianRecyclerViewمیده که هیچ جا نتونستم پیداش کنم حتی تو sdk manager
الان باید چکارکنم؟
سلام و درود.
آخرین نسخه بیسیک و sdk رو از سایت مرجع بگیرید و پروژه رو ران کنید
-
در ۱۴۰۱/۱۲/۲۲ در 21:01، Forutan گفته است:
ممنون میشم مهندس اگر توی اینروزا زحمتش رو بکشید پروژه ای داشتم قبلا منتشر شده الان چندماهه توسط بازار تعلیق و از انتشار خارج شده الان که میخوا آپدیت بدم یکی از مشکلاتش مربوط به این کتابخونه هست که برنامه متوقف میشه
اگر امکانش هست این یکی دو روز وقت بزارید بروزرسانی کنید، خدا خیرتون بده
سلام و درود.
کتابخونه بروزرسانی شد. نسخه 2.1. از فلگ FLAG_IMMUTABLE باید استفاده کنید
- 1
-
2 ساعت قبل، morteza najafi گفته است:
سلام وقت بخیر
من وقتی کتابخانه PersianRecyclerView و ChromCustomTabs را توی یک پروژه استفاده میکنم
برنامه اجرا میشه ولی وقتی به مرحله استفاده از ChromCustomTabs میشه از برنامه میپره بیرون
و این خطا رو میده
چطور میتونم این مشکل را برطرف کنم?
از نسخه 11.50 بیسیک استفاده میکنم
سلام و درود.
از خطا مشخصه که کتابخونه ChromCustomTabs داره از پکیجهای قدیمی support استفاده میکنه. باید نسخه به روز کتابخونه رو بگیرید یا اینکه jetifireکنید
-
8 ساعت قبل، morteza najafi گفته است:
سلام وقت بخیر
قسمت هایی که به صورت گیف هستن ، سورسی ندارن؟
من کتابخونه رو خریداری کردم ولی سورس ها رو نتوستم پیدا کنم
سلام و درود. آموزش پیاده سازی توی ویدئو ها هست
-
20 ساعت قبل، ali reza گفته است:
با سلام و خسته نباشید
با اضاف کردن کد Extends : androidx.appcompat.app.AppCompatActivity#
برنامه در همون ابتدای کار کرش میکنه و فورس کلوز میده بدون اینکه هیچ خطایی بده لطفا راهنمایی کنید خیلی بهش احتیاج دارم
نسخه b4a :12.2 هست و از api 33 استفاده میکنم و تمام موارد گفته شده در اموزش رو هم انجام دادم اما در اجرای سورسی که گذاشتید هم همین مشکل پیش میاد
سلام و درود. نسخه آخر sdk رو از سایت مرجع دانلود و جایگزین کنید و api رو برای b4a روی ۳۱ بزارید
- 1
دریافتMyketInapp کتابخانه درون پرداخت مایکت
در کتابخانه ها (Libraries)
ارسال شده در
یه متد جداگونه بنویسید واسه مصرف کردن خرید بعد توی onIabPurchaseFinished با دستور calsubdelayed اونو صدا بزنید ببینید اکی میشه یا نه نتیجه رو اعلام کنید لطفا