با سلام وسپاس
خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
Continue reading “حل کردن صفحه سفید اول اپ در بیسیک فور اندروید B4A”
پشتیبانی : 09352511893
با سلام وسپاس
خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
Continue reading “حل کردن صفحه سفید اول اپ در بیسیک فور اندروید B4A”
با استفاده از کد زیر زبان گوشی کاربر را میتوانید در برنامه تشخیص بدهید .
ابتدا کتابخانه Reflection را فعال کنید و کد زیر را در اکتیویتی مورد نظرتان قرار دهید :
Sub PhoneLanguage As String Dim r As Reflector r.Target = r.RunStaticMethod("java.util.Locale", "getDefault", Null, Null) Return r.RunMethod("getDisplayName") End Sub
برای مثال اگر بخواهید زبان فعلی گوشی کاربر را در یک لیبل نمایش دهید باید متن لیبل را بر روی PhoneLanguage قرار دهید :
label1.Text = PhoneLanguage
موفق باشید 🙂
نسخه جدید بیسیک فور اندروید اون هم با استفاده از نسخه ۸ جاوا و قابلیت های کاربردی فراوان ارائه شده است.
قابلیت های افزوده شده در این ورژن بیسیک قالبا راه حل مشکل بسیاری از سوالات دوستان می باشد..
بر همین اساس بر آن شدیم تا توضیح جامعی البته بتدریج درباره این قابلیت ها بیان کنیم.
Sleep
Sleep قابلیت ساده و کاربردی در برنامه نویسی با ورژن جدید بیسیک خواهد بود.
کاربرد این دستور توقف اجرای کدها در مدت زمان دلخواه می باشد
مثال اول
اسپلش رو اکثر بچه ها طراحی کردن. خب در روش مرسوم با استفاده از تایمر زمان ورود به اکتیویتی دوم مشخص میشد. ولی حالا خیلی سریع و ساده همانند کد زیر ساخته می شود
Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Layout1") Sleep(3000) StartActivity("Menu") Activity.Finish End Sub
در کد بالا بعد از سه ثانیه یا همون ۳۰۰۰ میلی ثانیه از زمان نمایش اسپلش اکتیویتی دوم نمایش داده میشود.
مثال دوم
اجرای رویداد بعد از زمان خاصی همیشه از سوالات دوستان بوده. مثلا با کلیک شدن یک دکمه افکت صوتی اجرا و با پایان اون دستورات مربوط به کلیک شدن اجرا بشوند.افکت های مختلف و زیبایی مثلا اجرای انیمیشن ها. و افکت های تصویری و صوتی فراوانی میشه براحتی به برنامه خودتان بسادگی اضافه کنید.
کد زیر کد رویداد این کلیک ها می باشد.
Sub btn_Action Dim b As Button = Sender For i = 10 To 0 Step - 1 b.Text = i Sleep(100) Next b.Text = "Takeoff!" End Sub
نکته: همانگونه که در مثال های بالا مشاهده نمودید استفاده از Sleep در مواردی که یک یا چند مکث با تعداد مشخص و یا تعداد کم داشته باشید. کاربرد دارد و در غیر اینصورت استفاده از تایمر همانند قدیم مناسبتر می باشد.
قابلیت Wait For:
در این قابلیت ما می تونیم تمامی رویداد هارو در کنار کدی که می نویسیم داشته باشیم.یعنی دیگه نیازی نیست شما به صورت جداگانه برید رویداد مثلا JobDone رو تعریف کنید.به وسیله WaitFor هر جای ادیتور و در بلاک های مختلف می تونید رویداد هاتون رو صدا بزنید و کنترل کنید.
مزایای Wait For:
– نظم بهتر به کد نویسی
– جلوگیری از تداخل در رویداد ها ( بر فرض هندل راحت دو تا Job بدون اینکه برای هیچ کدوم تداخلی بوجود بیاد )
خب با مثال میریم جلو تا واستون قابل درک باشه.
مثال اولش رو واسه SQL میزنیم، تا ببینیم به چ شکل عمل می کنه»
– اضافه کردن رکورد به دیتابیس و خروجی که رویدادش به ما بر میگردونه:
For i = 1 To 1000 sql.AddNonQueryToBatch("INSERT INTO table1 VALUES (?)", Array(Rnd(0, 100000))) Next Dim SenderFilter As Object = sql.ExecNonQueryBatch("SQL") Wait For (SenderFilter) SQL_NonQueryComplete (Success As Boolean) Log("NonQuery: " & Success)
نکته: ما از توابعی استفاده می کنیم که بعد از اجرای اونها رویدادی رخ بده ( توابعی که رویداد هایی برای آن ها تعریف شده )
حالا اینجا ما تابع AddNonQueryToBatch رو داریم که می تونیم اطلاعات رو درج کنیم.اطلاعات رو به وسیله این تابع وارد و با اجرای تابع ExecNonQueryBatch اطلاعات درج در دیتابیس می شوند.برای اینکه از وضعیت درج اطلاعات با خبر شویم، رویدادی رو اختصاص دادند.این رویداد یک متغییر از نوع Boolean داره که مشخص می کنه اطلاعات با موفقیت به دیتابیس وارد شده اند یا خیر.
به راحتی تونستیم به جای اینکه رویداد SQL_NonQueryComplete رو جدا تعریف کنیم، دقیقا بعد از کدی که واسش تعریف شده نوشتیم.دقیقا توی جاوا به همین شکل می تونید عمل کنید. می تونید رویداد رو هرجای کد تعریف کنید.
مثال از گرفتن اطلاعات از دیتابیس »
Dim SenderFilter As Object = sql.ExecQueryAsync("SQL", "SELECT * FROM table1", Null) Wait For (SenderFilter) SQL_QueryComplete (Success As Boolean, rs As ResultSet) If Success Then Do While rs.NextRow Log(rs.GetInt2(0)) Loop rs.Close Else Log(LastException) End If
خب فک نکنم پیچیدگی یا ابهامی توی این کد باشه.کوئری رو به تابع میدید و بعدش میایید توی رویدادش اطلاعات رو دریافت می کنید.در صورتی که مشکلی نباشه.اینجا هندل کردن خطاها خیلی بهتر شده.یعنی کد اجرا میشه و متغییر Success بهمون این اجازه رو میده تا خطایی در برناممون رخ نده و کنترلی داشته باشه.در مورد ResultSet هم بگم که جای نگرانی نداره و چیز جدیدی نیست، همون Cursor هستش.مشتق شده از Cursor هستش.( جزئی از شی گرایی هستش که هر شیی از یک شیی دیگه مشتق بشه تمامی وِِِیژگی ها و قابلیت های والدش رو به ارث میبره).
قابلیت Wait For:
مثالی از استفادش در OkHttpUtils2 »
Dim j As HttpJob j.Initialize("", Me) j.Download("https://www.google.com") Wait For (j) JobDone(j As HttpJob) If j.Success Then Log(j.GetString) End If j.Release
ساده ترین مثال ممکن لینک رو میدی بهش، رویداد رو در کنارش اضافه می کنی و نتیجه رو لاگ می کنید سخته واقعا ؟؟!!
مثال بعدی »
ub DownloadQuote Dim j As HttpJob j.Initialize("", Me) 'name is empty as it is no longer needed j.Download("http://quotesondesign.com/wp-json/posts?filter[orderby]=rand") Wait For (j) JobDone(j As HttpJob) If j.Success Then 'The result is a json string. We parse it and log the fields. Dim jp As JSONParser jp.Initialize(j.GetString) Dim quotes As List = jp.NextArray For Each quot As Map In quotes Log("Title: " & quot.Get("title")) Log("Content: " & quot.Get("content")) Next End If j.Release End Sub
خب اینم میاد یه سری پست رو به صورت جیسون میگیره و پردازش می کنه.عمل دانلود انجام میشه اگه موفقیت امیز بود مقادیرش رو میگیره و میریزه داخل شی جیسون.دیگه ادامش چیز جدیدی نداره.
استفاده از کد بالا هم فقط کافیه تابع DownloadQuote رو یه جایی صدا بزنید.
مثال بعدی »
Sub DownloadTwoLinks Dim j As HttpJob j.Initialize("", Me) 'name is empty as it is no longer needed j.Download("https://www.google.com") Wait For (j) JobDone(j As HttpJob) If j.Success Then Log(j.GetString) End If j.Release 'second request Dim j As HttpJob 'redim and initialize j.Initialize("", Me) j.Download("https://www.duckduckgo.com") Wait For (j) JobDone(j As HttpJob) If j.Success Then Log(j.GetString) End If j.Release End Sub
خب اینجا هم دو تا لینک رو میدیم بهش تا دانلود کنه واسمون.هر جای کد واستون نا مفهوم بود، کد رو خودتون تست کنید و ببینید به چ شکل عمل می کنه.می تونید با Log گذاشتن نحوه عملکردش رو ببینید.
مثال بعدی »
Sub Activity_Create(FirstTime As Boolean) DownloadMany(Array("http://www.google.com", "http://duckduckgo.com", "http://bing.com")) End Sub Sub DownloadMany (links As List) For Each link As String In links Dim j As HttpJob j.Initialize("", Me) 'name is empty as it is no longer needed j.Download(link) Wait For (j) JobDone(j As HttpJob) If j.Success Then Log("Current link: " & link) Log(j.GetString) End If j.Release Next End Su
دانلود محتوای سایت ها.خیلی شیک و معمولی.
مثال بعدی »
Sub DownloadImage(Link As String, iv As ImageView) Dim j As HttpJob j.Initialize("", Me) j.Download(Link) Wait For (j) JobDone(j As HttpJob) If j.Success Then iv.Bitmap = j.GetBitmap End If j.Release End Sub
دانلود عکس و قرار دادنش توی ایمیج ویو، نحوه استفادش:
Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("1") DownloadImage("https://b4x-4c17.kxcdn.com/android/forum/data/avatars/m/0/1.jpg?1469350209", ImageView1) DownloadImage("https://b4x-4c17.kxcdn.com/images3/code.png", ImageView2) End Sub
این نحوه ی استفاده از قابلیت Wait For هستش تا واسه ی شما جا بیوفته.
با این می تونید رویداد هاتون رو هرجا که خواستید تعریف و کنترل کنید.
پیروز باشید .
مدرس : آرتا و مهدی نژاد
در این قسمت یک کد بسیار کاربردی را قرار داده ایم که با استفاده از آن میتوانید آیکون برنامه خودتون را مخفی کنید به طوری که در لیست برنامه ها نمایش داده نشه ! برای استفاده از این کد کتابخانه Reflection را فعال کنید و کد زیر را توی اکتیویتی مورد نظرتون قرار بدین :
Sub HideApp(Enable As Boolean) Dim r As Reflector Dim cn As Object = r.CreateObject2("android.content.ComponentName", _ Array As Object(Application.PackageName, Application.PackageName&".main"), _ Array As String("java.lang.String", "java.lang.String")) r.Target = r.GetContext r.Target = r.RunMethod("getPackageManager") Dim e As Int If Enable = True Then e = 2 Else e = 1 End If r.Target = r.RunMethod4("setComponentEnabledSetting", Array As Object(cn, e, 0), _ Array As String("android.content.ComponentName", "java.lang.int", "java.lang.int")) End Sub
حالا برای مخفی کردن آیکون کافیه که کد زیر را در بخش مورد نظرتون قرار بدین ( زمانی که میخواهید آیکون مخفی بشه ) :
HideApp(True) /pre>
و برای اینکه برنامه را مجددا از حالت مخفی خارج کنید کافیه که از کد زیر استفاده کنید :
HideApp(False) /pre>
در ضمن بهتره که این کد ها را در اکتیویتی Main استفاده کنید …
با سلام و سپاس
این سورس کد رو یکی از کاربران یاهو ۹۸ YAHOO برای ارتقاع سطح دوستان مبتدی ارسال کرده و درخواست گذاشتن در سایت رو داشته بود.
نیز شما هم اگر سورسی به رایگان و غیر رایگان دارید با ما در ارتباط باشید.
موفق باشید.
دانلود سورس
با سلام و سپاس
اگر سوالی بود در نظرات درج کنید تا پاسخگو باشیم.
موفق باشید.
کد زیر رو در مینفیست خودتون قرار بدید:
AddReceiverText(SendNotification, <intent-filter> <action android:name="android.net.wifi.STATE_CHANGE"/> </intent-filter>)
و کد زیر هم خودش ساب هست که وصل بودن رو بررسی می کنه و برمی گردونه
Sub Service_Start (StartingIntent As Intent) If StartingIntent.Action = "android.net.wifi.STATE_CHANGE" Then If Not(StartingIntent.HasExtra("bssid")) Then Return Dim jo As JavaObject = StartingIntent Dim NetInfo As Object = jo.RunMethodJO("getParcelableExtra",Array("networkInfo")).RunMethod("getDetailedState",Null) Dim State As JavaObject : State.InitializeStatic("android.net.NetworkInfo.DetailedState") If (NetInfo <> State.GetField("DISCONNECTED") And NetInfo <> State.GetField("CONNECTED")) Then Return LogColor("SentNotification:Service_Start: Connection event: "&NetInfo,Colors.Red) end if
با سلام و سپاس خدمت دوستان و کاربران عزیز
امروز براتون سورس تهران شناس رو مهیا کرده ایم.
تمام امکانات بازی آفتابه رو داره ولی خب ایده ش متفاوته. در قسمت درباره ما یک انیمیشن خیلی جالبی کار کرده شده که چرخش سکه رو تداعی می کنه، خودش می تونه ی جور بازی باشه.
امیدوارم مورد قبول واقع کردد.
لینک کافه بازار : https://cafebazaar.ir/app/com.andraulic.tehranshenas/?l=fa
دانلود سورس
پکیج کتابخانه ها
با سلام و سپاس
با این سورس کد شما نحوه گرفتن اطلاعات سایت رو ربه وسیله گت المنت و جدا سازی آن بوسیله ریجکس رو فرا میگیرید.
که خود مبحث ریجکس خیلی کار آمد و پیچیده می باشد که در آینده نزدیک به آن هم میپردازیم .
Continue reading “سورس کد گت المنت سایت قیمت موبایل ( بیسیک فور اندروید )”
با سلام و درود به کاربران گل یاهو ۹۸ YAHOO
امروز سورس کد آموزنده محاسبه اوقات شهری که این سورس کد خیلی آموزنده و در هر برنامه ای جای دارد .
همکنون میتونید این سورس رو به رایگان دانلود کنید .
موفق باشید.
دانلود سورس
دانلود کتابخانه ها
با سلام و درود خدمت دوستان عزیز
امروز آموزش ارتباط با ما تحت وب رو برای شما مهیا کرده ایم .
امیدوارم مورد قبول شما عزیزان واقع گردد.
مشکلی بود در نظرات بیان کنید تا رسیدگی شود .
ابتدا شما باید ی جدول داخل دیتابیس خودتون ایجاد کنید و اطلاعات دیتابیس رو داخل فایل php زیر وارد کنید:
خط اول که چیز خاصی نداره و فقط واسه اتصاله
DBName:اسم دیتابیس ،USERNAME ,PAssword اینها هم که کاملا مشخصه
داخل ۲ و ۳ و ۴ هم اومدیم متغییر تعریف کردیم(یکی واسه عنوان،بکی هم واسه ایمیل،یکی هم واسه توضیحات)
خط ۵ هم اومدیم داخل دیتابیس گذاشتیم (بجای tbl_Name اسم جدول دیتابیس خودتونو بنویسید)
-بریم سراغ بیسیک
اول ی لایوت میزاریم که سه تا ادیت تکست داره و ی باتن برای ارسال
ی متغییر از نوع httpjob تعریف می کنیم
Dim ht_add As HttpJob
اکتیویتی لود لیوت می کنیم و کد های زیر را داخل sub click می نویسیم
Sub button1_Click If EditText1.Text = "" Or EditText2.Text = "" Or EditText3.Text = "" Then ToastMessageShow("همه موارد را پر کنید",False) Return End If If EditText1.Text.Length < 4 Then ToastMessageShow("نام خانوادگی نمیتواند کمتر از ۴ حرف باشد",False) Return End If If EditText3.Text.Length < 10 Then ToastMessageShow("توضیحات نمیتواند کمتر از ۱۰ حرف باشد",False) Return End If ht_add.PostString("http://*****/add.php","user="&EditText1.Text&"&email="&EditText2.Text&"&desc="&EditText3.Text) End Sub
چند تا خط اول که واسه کنترله خودتون بهش شاخه برگ بدین
و اما خط اخر
اومدیم postString کردیم مطالبی که داخل ادیت تکست ها هستن
به جای http://*****/add.php هم آدرس فایل php خودتون رو بدین
مدرس : آقا سجاد
با سلام و سپاس
سورسی که امروز براتون مهیا کردم حجم عکس رو به صورت باورنکردنی کم میکنه
سورس و کتابخانه پیوست شد .
امیدوارم مفید واق گردد.
دانلود سورس و کتابخانه
با سلام و سپاس خدمت دوستان عزیز
کتابخانه ای که امروز براتون مهیا کردم خیلی جالبه .
دید تو برنامه ای مثل تلگرام یا جیمیل لینکی رو باز میکنیم تو خود برنامه مرورگر شبیه گوگل کروم باز میشه امروز میخواهیم به این مبحث بپردازیم .
برای این کار کافیه کتابخانه پیوست شده رو به کتابخانه های بیسیکتون اضافه کرده و سمپل رو ران کنید یا همون ریلیز کنید .
شایان به ذکر می باشد که اگر گوگل کروم نصب باشه با اون محیط باز میشه و گرنه از مرورگر پیش فرض استفاده میشود.
برای این کار گوگل مستنداتی را در اختیار برنامه نویسان قرار داده که برای ( اندروید استودیو – اکلیپس ) هست .
و برای بیسیک۴اندروید به صورت مستقیم نمیشه از اونا استفاده کرد.
ولی با این کتابخانه که معرفی میکنیم میشه چنین کاری رو پیداه سازی کرد.
لینک مستندات : https://developer.chrome.com/multidevice/android/customtabs
موفق باشید.
Sub Activity_Create(FirstTime As Boolean)
yahoo.Initialize("yahoo")
Activity.AddView(yahoo,20dip,20dip,100%x-40dip,60dip)
yahoo.Text = "YAHOO98 open cherom"
End Sub
Sub yahoo_Click
Dim crypt3r As ChromCustomTabs
crypt3r.Initialize("crypt3r")
crypt3r.chromeCustomTab("https://crypt3r.ir/wp")
End Sub
دانلود سورس
دانلود کتابخانه
با سلام و سپاس خدمت کاربران گرامی
کتابخانه UniversalImagLoader برای بیسیک فور اندروید
دوستان اکثر شما با این کتابخانه آشنا هستید کتابخانه ای برای کش کردن و نمایش عکس تمام نسخه ها و مثال ها پیوست شد.
libUniversalImageLoader_V1.0.0.zip
http://s8.picofile.com/file/8308973918/libUniversalImageLoader_V1_0_0.zip.html
libUniversalImageLoader_V1.0.1.zip
http://s9.picofile.com/file/8308973968/libUniversalImageLoader_V1_0_1.zip.html
libUniversalImageLoader_V1_0_2
http://s8.picofile.com/file/8308973992/libUniversalImageLoader_V1_0_2.zip.html
UniversalImagLoaderEx.zip
http://s9.picofile.com/file/8308974018/UniversalImagLoaderEx.zip.html
UniversalImagLoaderEx2_Flags.zip
http://s8.picofile.com/file/8308974042/UniversalImagLoaderEx2_Flags.zip.html
با سلام و درود فروان
برای اجرای سرویس یه اپ دیگه میتونید پکیج نیم اون اپ و اسم سرویس رو بهش بدید و اون سرویس رو باز میکنه.
منتهی باید اون سرویس قابلیت exported ش برابر با true باشه که بتونید اجراش کنید.
حتی اگه میخواین سرویس های اپ خودتون هم قابلیت اجرا توسط اپ های دیگه داشته باشه رو باید توی مانیفست برا سرویس یه properties براش تعریف کنید با عنوان android:exported و مقدارشو true بدید.
Sub StartAnotherAppService(PackageName As String,Servicename As String) Dim int1 As Intent int1.Initialize("","") int1.SetComponent(PackageName & "/." & Servicename) StartService(int1) End Sub
گرداورنده : آقاخانی
با سلام و سپاس
با این تکه کد شما میتونید بین دو متن در فاصله ایجاد کنید .
ابتدا تیک کتابخانه reflection بزنید و بعد ساب زیر رو اضافه کنید :
sub setLineSpace (lbl as label,meghdar as float) Dim r As Reflector r.Target = lbl r.RunMethod3("setLineSpacing",1, "java.lang.float", meghdar, "java.lang.float") end sub
setLineSpace(lbl1,1.3)
جای اون ۱٫۳ میتونی از مقادیر دیگه استفاده کنید بنا به استفاده خودتون