با سلام و سپاس خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
امروز براتون یه آموزش کاربردی در زمینه لیمیت دادن به رکورد ها در بیسیک فور اندروید و php آماده کرده ایم .
پشتیبانی : 09352511893
با سلام و سپاس خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
امروز براتون یه آموزش کاربردی در زمینه لیمیت دادن به رکورد ها در بیسیک فور اندروید و php آماده کرده ایم .
با سلام و سپاس خدمت دوستان عزیز سایت یاهو ۹۸ YAHOO
امروز براتون آموزش تصویری و به زبان فارسی تهیه کرده ایم که :
با سلام و سپاس خدمت شما سروران عزیز
امروز با تکه کدی کاربردی در خدمتتون هستیم.
با این تکه کد شما میتونید تمامی مواردی که در یک خط نوشته شده رو جوری که میخواهید جداسازی کنید.
با سلام و سپاس
دید تا حالا تو برنامه های متعددی به جای ثبت نام با کانت های گوگل و فیسبوک و غیره لاگین میشن ؟
حتما خیلی براتون جالب بوده ؟
امروز میخواهیم این روش رو به شما به راحت ترین شیوه بیان کنیم برای این کار باید طبق زیر عمل کنید :
#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 #Extends: android.support.v7.app.AppCompatActivity Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. End Sub Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Dim id As String = "" Dim sign As SignGoogle End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: 'Activity.LoadLayout("Layout1") sign.Initialize(id,Me) Dim ls1 As List ls1 = sign.GetAccountList Dim Builder As MaterialDialogBuilder Builder.Initialize("GoogleList") Dim si As MaterialSimpleListItem Builder.Title("یک حساب انتخاب کنید") If ls1.Size < 1 Then Else For i = 0 To ls1.Size -1 Dim cs As CSBuilder cs.Initialize.Size(13).Append(ls1.Get(i)).PopAll si.Initialize(Null, cs) si.BackgroundColor = Colors.White Builder.AddSimpleItem(si) Next Builder.Show End If End Sub Sub GoogleList_SimpleItemSelected (Dialog As MaterialDialog, Position As Int, Item As MaterialSimpleListItem) ToastMessageShow(Item.Content, False) sign.SelectAccount(Item.Content) sign.RequestSign("UserLogin") Dialog.Dismiss End Sub Sub UserLogin(Data As Map,Login As Boolean) Log(Data.Get("id")) Log(Data.Get("email")) Log(Data.Get("name")) Log(Data.Get("family_name")) Log(Data.Get("picture")) End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub
و یک کclass هم دارین به این صورت :
Private Sub Class_Globals Private clientId As String : clientId = "" 'enter client id here 'Private clientSecret As String : clientSecret = "" 'client secret here Private AccessToken As String Private userInfoLink As String : userInfoLink = "https://www.googleapis.com/oauth2/v1/userinfo" Private m_GoogleAccountManager As clsB_GoogleAccountManager Private modules As Object Private evt As String Private l_GoogleAccounts() As Object End Sub 'Step 1 Public Sub Initialize(sClientID As String,module As Object) clientId = sClientID m_GoogleAccountManager.Initialize(0) modules = module End Sub 'Step 3 Sub SelectAccount(AccountName As String) For Each l_joAccount As JavaObject In l_GoogleAccounts If l_joAccount.GetField ("name") = AccountName Then Exit End If Next Dim l_sScopes As String = "email profile" Dim l_sAuthTokenType As String = $"oauth2:${l_sScopes}"$ Dim l_sAccessToken As String = m_GoogleAccountManager.getAuthToken_foreground(l_joAccount,l_sAuthTokenType) AccessToken = l_sAccessToken End Sub 'Step 2 Sub GetAccountList As List l_GoogleAccounts = m_GoogleAccountManager.getAccountsByType("com.google") If l_GoogleAccounts.Length = 0 Then Return Null Dim l_sAccountNames As List : l_sAccountNames.Initialize For Each l_joAccount As JavaObject In l_GoogleAccounts Dim l_sAccountName As String = l_joAccount.GetField ("name") l_sAccountNames.Add(l_sAccountName) Next Return l_sAccountNames End Sub 'Step 4 Sub RequestSign(Event As String) evt = Event Dim dl As PersianFastNetwork dl.initialize("dl").BuildGetQuery(userInfoLink,"getUserDetails") _ .addParametrs("access_token",AccessToken).executRequesAsString ProgressDialogShow2("درحال دریافت اطلاعات...",False) End Sub Sub dl_onGetStringOkListener(Result As String , Tag As String ) ProgressDialogHide If Result <> Null Then Select Tag Case "GetAccessToken" Dim JSON As JSONParser Dim map1 As Map JSON.Initialize(Result) map1=JSON.NextObject AccessToken=map1.Get("access_token") CallSub3(modules,evt,map1,False) Case "getUserDetails" Dim JSON As JSONParser Dim map1 As Map JSON.Initialize(Result) map1 = JSON.NextObject CallSub3(modules,evt,map1,True) End Select End If End Sub
خوب حالا من توضیحات لازم رو میدم
شما یه پروژه باز میکنید و کد های لولی رو داخل اکتیویتی main پست میکنید .
بعد یه class به اسم SignGoogle میسازد و کد های class رو داخلش پست میکنید .
بعد وارد منیفست میشید کد های زیر رو داخل منیفست قرار میدی :
AddPermission(android.permission.GET_ACCOUNTS) AddPermission(android.permission.USE_CREDENTIALS) AddPermission(android.permission.INTERNET)
اول از همه ما باید وارد سایت گوگل بشیم از آدرس زیر که راحترین راه می باشد برای ساخت آیدی یا همان api keys
http://console.developers.google.com
و بعد از ساخت api key مربوطه اون رو در اکتیویتی main در قسمت id میزاریم و باهاش به گوشی لاگین میشیم که توش برنامه گوگل سرویس و پلی نصب باشه
مدرس : مجید گودرزی
این آموزش از قبل تو کانال بود فقط چون دیدیم ….. هایی کپی کدها رو تو سایت های خوشون منتشر دادن به اسم خودشون بنا به درخواست نویسنده آقای گودرزی دوباره داخل سایت گذاشته شد که ……………………. موفق باشید.
با سلام خسته نباشید
من یه قطعه سورس دیتابیس انلاین با محیط پر قدرت بیسیک ۴ اندروید برای شما تهیه کردم که در هیچ جا نمیتوانی اموزششو پیدا کنید .
باید بگم کدها شباهت زیادی با دیتابیس محلی یا همان دیتابیس افلاین دارد مطمعن هستم خیلی خوشحالتون میکنه
قابلیت ها
و غیره …
در اینجا بگم من از هاست استفاده نکردم از شبیه ساز زمپ استفاده کردم و اگر هم از محیطه زمپ یا هاست اشنایی نداری میتونید از اینجا که من دادم یا یه سرج کوتاه میتونید اموزش هایی زیادی در این مورد پیدا کنید.
دانلود سورس + php
کتابخانه Httputlis2 و JSON هم تیک بزنید .
ایشالا به همین زودی قابلین لایک و لیمیت و ارسال پست هم براش میذارم .
با سلام وسپاس
خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
Continue reading “حل کردن صفحه سفید اول اپ در بیسیک فور اندروید B4A”
نسخه جدید بیسیک فور اندروید اون هم با استفاده از نسخه ۸ جاوا و قابلیت های کاربردی فراوان ارائه شده است.
قابلیت های افزوده شده در این ورژن بیسیک قالبا راه حل مشکل بسیاری از سوالات دوستان می باشد..
بر همین اساس بر آن شدیم تا توضیح جامعی البته بتدریج درباره این قابلیت ها بیان کنیم.
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 هستش تا واسه ی شما جا بیوفته.
با این می تونید رویداد هاتون رو هرجا که خواستید تعریف و کنترل کنید.
پیروز باشید .
مدرس : آرتا و مهدی نژاد
با سلام و سپاس
خدمت کاربران عزیز وب سایت یاهو ۹۸ YAHOO
سورسی که حدودا یک هفته ای هست کد نویسی کردم و دیشب به پایان رسید رو براتون قرار دادم داخل فروشگاه .
این سورس میاد از مخاطب مشخصات شخصی رو میگیره و در برنامه نمایش میده برای دوست یابی
Continue reading “سورس کلانیت و ادمین برنامه دوست من , کتابخانه , php , sql”
با سلام و درور خدمت شما کاربران وب سایت یاهو ۹۸ YAHOO
طبق در خواست مکرر دوستان آموزشی با بیان ساده و کوتاهی براتون گرفتم که بتونید تعداد ویو یا همون نمایش و یا بازدید از مطالبتون رو به صورت آنلاین در برنامه دریافت و رویت کنید .
Continue reading “آموزش نمایش تعداد بازدید در بیسیک فور اندروید ( به صورت آنلاین * دیتابیس آنلاین )”
سلام.
با این کارها میتونی کاری کنی که سرویس بسته نشه.
ماندگار کردن سرویس از طریق اضافه کردن این کد توی #Region Service Attributes :
#StartCommandReturnValue: android.app.Service.START_STICKY
استارت کردن سرویس به صورت خودکار بعد از روشن شدن گوشی که باید #StartAtBoot : رو برابر با true قرار بدی.
#StartAtBoot: true
اجرا کردن سرویس هر ۵دقیقه یک بار با اضافه کردن این کد به service_start به این صورت:
Sub Service_Start (StartingIntent As Intent) StartServiceAt("", DateTime.Now + 60000*5,True) End Sub
و اجرا کردن بلافاصله ی سرویس بعد از بسته شدن سرویس ، در رویداد service_destory :
Sub Service_Destroy StartService("") End Sub
یعنی اگه کسی حتی بره توی قسمت مدیریت برنامه و از اونجا برنامه رو فورس کلوز کنه ، بازهم اجرا میشه.
با سپاس
در این سورس شما نحوه کلیک روی عکس و بزرگ شدن عکس در همون اکتیویتی به صورت شیشه ای رو یاد میگیرید .
دانلود سورس
دانلود نمونه APK
با درود
در این قسمت از سایت میپردازیم به راست چین کردن اشیاء که میخواهیم قرار بدیم در تولبار
والا نمیدونم منیع امیر بود خمیر بود چی بود
دانلود سورس
#Region Project Attributes #ApplicationLabel: B4A Example #VersionCode: 1 #VersionName: 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: unspecified #CanInstallToExternalStorage: False #Extends: android.support.v7.app.AppCompatActivity #End Region #Region Activity Attributes #FullScreen: False #IncludeTitle: True #End Region Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. End Sub Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Private ACToolBarLight1 As ACToolBarLight Dim lbl As Label End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: Activity.LoadLayout("Main") lbl.Initialize("lbl") ACToolBarLight1.AddView(lbl,ACToolBarLight1.Width,ACToolBarLight1.Height,Gravity.RIGHT) ACToolBarLight1.Elevation = 4dip lbl.Text = " خانه" lbl.TextColor = Colors.White lbl.Gravity = Gravity.FILL lbl.Typeface = Typeface.LoadFromAssets("irs.ttf") lbl.TextSize = 20 End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub
با سپاس و درود
در این ساعت از ساعت می پردازیم به کار با check box + timer
سورس کد پیوست شد .
دانلود نمونه APK
دانلود سورس
سلام دوباره
امروز با کامل ترین سورس و آموزش متریال با شما هستیم.
این سورس را هیچ جای دیگر پیدا نخواهید کرد چون به تازه گی توسط خودم نوشته شده و کامل کامل هستش همراه با تمامی ریسورس ها و کتابخانه ها
اگر ین سورس را در جای دیگر دیدید به ما اطلاع دهید
Continue reading “کامل ترین سورس متریال در سطح نت با ۱/۴ قیمت”
باز هم با یه کتابخانه و آموزش دیگه که توسط اعضای سایت Yahoo98 ساخته شده در خدمت شما هستیم…
در این آموزش شما یاد خواهید گرفت که چگونه یک شمارش معکوس بسازید که حتی وقتی برنامه به طور کامل بسته شد این شمارش ادامه پیدا کنه… و وقتی تمام شد کار مورد نظرتون انجام بشه.
این شمارش ممکن است روز ها باشد و یا ساعت ها و دقیقه ها و در این آموزش مدت زمان رو ۳ دقیقه تنظیم شده است.
دانلود سورس