<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های محمد باقر فکوری</title>
        <link>https://virgool.io/feed/@mbfakourii</link>
        <description>برنامه نویس  |  تلگرام @mbfakourii | ایمیل mbfakourii@gmail.com</description>
        <language>fa</language>
        <pubDate>2026-06-16 10:09:00</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/60937/avatar/61qvVK.jpeg?height=120&amp;width=120</url>
            <title>محمد باقر فکوری</title>
            <link>https://virgool.io/@mbfakourii</link>
        </image>

                    <item>
                <title>فرآیند طراحی یک اپلیکیشن</title>
                <link>https://virgool.io/@mbfakourii/%D9%81%D8%B1%D8%A2%DB%8C%D9%86%D8%AF-%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%DB%8C%DA%A9-%D8%A7%D9%BE%D9%84%DB%8C%DA%A9%DB%8C%D8%B4%D9%86-ejownd8soizw</link>
                <description>طراحی یک اپلیکیشن فرآیند چند مرحله‌ای است که از ابتدای مراحل مفهومی تا اجرا و پشتیبانی ادامه می‌یابد. در ادامه، مراحل عمده طراحی یک اپلیکیشن آورده شده‌اند:تحقیق و تجزیه و تحلیل:بررسی بازار و نیازهای کاربرانتحلیل رقبا و اپلیکیشن‌های مشابهشناخت مخاطبان و نقاط ضعف یا نیازهای آن‌هاتعیین اهداف و ویژگی‌ها:تعیین هدف اصلی اپلیکیشنمشخص کردن ویژگی‌ها و امکانات اصلیتعیین اهداف مختصر و بلندمدتساختار اپلیکیشن (Information Architecture):طراحی ساختار منطقی اپلیکیشنتعیین نقاط ورود و خروج کاربرانتدوین نمودارهای ساختار اطلاعاتیطراحی رابط کاربری (UI Design):ایجاد طرح‌های صفحات کاربریانتخاب رنگ‌ها، فونت‌ها و المان‌های گرافیکیطراحی لایه‌های گرافیکی برای موبایل یا وبتجربه کاربری (UX Design):بهبود تجربه کاربری از طریق تست‌ها و بازخوردهاایجاد نمونه‌های تعاملی (prototypes)ایجاد راهکارهای مناسب برای مسائل تجربیتوسعه و پیاده‌سازی:انتخاب فریم‌ورک و زبان برنامه‌نویسیپیاده‌سازی امکانات و ویژگی‌هاارتباط با پایگاه داده و پیاده‌سازی قسمت‌های سروری (اگر لازم باشد)تست و ارزیابی:انجام تست‌های واحد و تست‌های یکپارچهتست تداخل (Integration testing)تست عملکرد و تست کاربریاجرا و پشتیبانی:نصب اپلیکیشن و اجرای آنارائه به‌روزرسانی‌ها و بهبودهاارائه پشتیبانی فنی و رفع اشکالاتاین مراحل ممکن است با توجه به نوع اپلیکیشن و نیازهای خاص تغییر کنند، اما این رویکرد به طور کلی فرآیند طراحی یک اپلیکیشن را نمایش می‌دهد.</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Sat, 17 Feb 2024 16:21:09 +0330</pubDate>
            </item>
                    <item>
                <title>ساخت کتابخانه برای اندروید</title>
                <link>https://virgool.io/@mbfakourii/%D8%B3%D8%A7%D8%AE%D8%AA-%DA%A9%D8%AA%D8%A7%D8%A8%D8%AE%D8%A7%D9%86%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-rnlpapuawmdt</link>
                <description>بسم الله الرحمن الرحیمسلام امروز میخواهیم اموزش ساخت کتابخونه و انتشارش در jitpack به شکل عمومی و خصوصی رو بدم با این کار میتونید کتابخونه واسه خودتون بسازید واونو در Github به انتشار بزارید و یا به شکل خصوصی با Gitlab این کار انجام بدین و اونو تو تمام پروژه هاتون استفاده کنید در واقع همون implementation که مال کتابخونه ها هست و با اضافه کردنش به اندروید استدیو کتابخونهش به اندروید استدیو اضافه میشه میگم امیدوارم خوشتون بیاد :)سناریو زیر دنبال کنید تا دستتون بیادخوب اول باید یک پروژه در اندروید استدیو ایجاد کنیم و اسمشو مثلا بزاریم LogShow که کار این پروژه و کتابخونه اینکه یک تابع داره و بهش یک استرینگ میدیم و اونو log میکنه !حالا زمان ساخت کتابخونست به مسیر زیر بریدFile &gt; New &gt; New Module...بعد Android Library رو انتخاب و NEXT بزنید و اطلاعات مثل تصویر زیر پر کنید و FINISH بزنیدکتابخونتون امادست :)خوب برای اینکه بتونید از کتابخونه در این پروژه استفاده کنید باید اونو ایمپورتش کنید اول به settings.gradle برید و دو تا include دی را به شکل زیر تغییر بدین در واقع یک include دش کنیدinclude &#039;:app&#039; , &#039;:logshow&#039;چون اگه دو تا باشه تو پروژه فعلی نمیشه روش تست زد و یک پروژه دیگه در نظر میگیره ! و بعد برین به build.gradle (Module: app)و کتابخونه که ساختید به پروژه فعلی اضافه کنید در dependencies ها خط زیر را اضافه کنیدdependencies {
    .
    .
    .

    implementation project(&#039;:logshow&#039;)
}و بعد Sync کنید پروژه روحالا به پوشه کتابخونتون بریم و یک کلاس کاتلینی به نام LogShow بسازیدو کد های زیر داخلش بزارید کد خاصی نیست یک تابست که یک رشته میگیره و log میکنهclass LogShow {
    fun logShow(value: String) {
        Log.i(&amp;quotTAG&amp;quot, value)
    }
}خوب حله در واقع الان کتابخونتون امادست و حالا میریم یه تستی ازش تو پروژه فعلی بگیریم در واقع یک example واسش درست کنیم ! در MainActivity پروژه فعلی کد های زیر بزارید در واقع یک رشته دارم log میکنم با کتابخونه ای که ساختیمclass MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val showLog = LogShow()
        showLog.logShow(&amp;quotHello World!&amp;quot)
    }
}خوب بعد اجرا متن Hello World! در logcat به نمایش در میاد !خوب تا اینجا امید وارم خسته نشده باشید الان در واقع کتابخونه رو ساختیم و example رو هم ساختیم و حالا موقع انتشارش هست حالا چه بصورت عمومی یا خصوصی !خوب در جریان هستین که دو سرویس میزبانی وب برای پروژه‌های سیستم سورس کنترل گیت به نام Github و Gitlab موجوده البته سرویس های میزبانی دیگریم هستن ولی ما تو این اموزش از این دو استفاده میکنیم Github به شکل رایگان به ما اجازه میده سورس رو به شکل عمومی انتشار بدیم و خصوصیش رو باید پول بدیم و Gitlab هم عمومی و هم خصوصی رو رایگان میده ولی چون Github عمومیت بیشتری تو انتشار به شکل عمومی داره ما در این اموزش از Github برای انتشار عمومی و Gitlab برای انتشار خصوصی استفاده میکنیم !خوب اول به شکل عمومیبا اکانت Github وارد سایتش بشید و یک New repository ایجاد کنیدخوب اطلاعات مربوط به remote شدن(به شکل https) به Git و commit شدنشو تو Terminal اندروید استدیو بزنیدبه شکل زیر عمل کنیدgit init
git add .
git commit -a -m &amp;quotfirst commit&amp;quot
git remote add origin https://github.com/flashiran1/LogShow.git
git push -u origin masterاین ادرس https://github.com/flashiran1/LogShow.git ادرس Github منه مال شما فرق داره بعد ساخت repository به شما میده ادرس رو!ممکنه در push کردن ازتون نام کاربری و رمز بخواد که مال Github تون رو وارد کنید !خوب بریم به اندروید استدیو !در (top build پروژه)build.gradle (Project: LogShow)خط زیر را در dependencies اضافه کنیدdependencies {
    .
    .
    .
    classpath &#039;com.github.dcendents:android-maven-gradle-plugin:2.1&#039;
}در (build کتابخونه)build.gradle (Module: logshow)خط زیر را در بالا خطوط اضافه کنید .
.
.
apply plugin: &#039;com.github.dcendents.android-maven&#039;

group=&#039;com.github.your_github_name&#039;

android {
.
.
.در group باید در واقع اسم پکیج بزارید که بعدن با اون میشه implementation کرد !من به شکل زیر میزارمgroup=&#039;com.github.flashiran1&#039;خوب حالا Sync کنید و پروژه رو به شکل زیر در Terminal به Github اضافه کنیدgit add .
git commit -a -m &amp;quotadd maven&amp;quot
git push -u origin masterخوب در Github پروژه برید به releases و Create a new release بزنیدو اطلاعات به شکل زیر پر کنید و روی Publish release بزنیددر واقع دارید نسخه نهایی صادر میکنید واسه پروژه بعد تغییرات مثلا زیاد :)خوب ورژن 0.0.1 امادست .خوب برید به سایت https://jitpack.io/و در کادر , url که از سایت Github دریافت کردید رو وارد کنید و Look up بزنید و :) :)  implementation شما امادست :)))بجای Tag ورژن بزارید مال من شدdependencies {
	implementation &#039;com.github.flashiran1:LogShow:0.0.1&#039;
}در واقع خود jitpack میره از Github با url مربوط به پروژه implementation شو میگیرهخوب این implementation تو هر پروژه ای میتونید استفاده کنید و به هر کسی بدیم چون عمومیه و حتی میتونید یک README.md تو پروژه Github تان بسازید و اونجا واسه عموم بزارید با توضحیات کتابخونه و...بریم برای خصوصیخوب تقریبا مثل عمومیه ولی یک سری جاش فرق داره من همین پروژه واسه خصوصی تغیر میدم !خوب وارد اکانت Gitlab بشید و New project کنید و اطلاعات مثل تصویر زیر پر کنید و روی Create project بزنیدخوب از پروژه قبل باید اول قسمت group تغییر بدیم و بعد remote مال Github رو حذف کنیم و مال Gitlab که بعد ساخت پروژه دریافت کردید اضافه کنیم و بعد به Gitlab پوش کنیمبه شکل زیر اول تغییر group در (build کتابخونه)build.gradle (Module: logshow)به شکل زیرgroup=&#039;com.gitlab.flashiran1&#039;من این شکلیش کردم خودتون میتونید چیز دیگری بزاریدو بعد در Terminal این کد ها رو میزنیم تا پروژه در Gitlab پوش بشهgit add .
git commit -a -m &amp;quotcheng group&amp;quot
git remote remove origin
git remote add origin https://gitlab.com/flashiran1/logshow.git
git push -u origin masterممکنه ازتون در push نام کاربری و رمز Gitlab رو بخواد که واردش کنید !خوب حالا برید به Settings در سایت Gitlabو بعد در Access Tokens یک توکن جدید بگیرید اطلاعات مثل زیر پر و تیک بزنید ! (در واقع دارین دسترسی میدید به jitpack تا پروژه های شما رو ببینه)خوب یک Access Token به من میده حالا این Access Token سایت Gitlab رو کپی میکنیم و میریم سایت jitpack حالا در بالای سایت روی Sign In میزنیم و وارد سایت میشیم بر روی منو که همون جایی که Sign In بود میزنیم و روی Settings میزنیم و کد دریافتی از Gitlab در قسمت GitLab.com وارد میکنیم (در این قسمت برای انتشار خصوصی میشه از بقیه سرویس های ورژن کنترل گیت هم استفاده کرد !) و جایی در صفحه کلیک میکنیم تا تیک سبز بزنه !(این قسمت خیلی بد طراحی کردن قبول دارم!)خوب حالا بریم به اول سایت jitpack و ادرس https سایت Gitlab تان را در کادر وارد و lookup بزنیدواسه من ادرسش هستhttps://gitlab.com/flashiran1/logshow.gitو تمام :) همینجوری که مشاهده میکنید implementation  به شما داد ! حالا کتابخونه خصوصی شد و برای استفاده تو پروژه باید از Access Token استفاده کنید !حالا برای استفاده از حالت خصوصی در پروژه دیگر باید اول Access Token از صفحه settings سایت jitpack  کپی کنیدبعد کپی برین تو پروژه که میخواید از این کتابخونه خصوصی استفاده کنید در gradle.properties پروژه در اخر فایل خط زیر را اضافه کنیدauthToken=jp_jc6evn28vncnt305fivq6s37i6همون کد سایت jitpack جای jp_jc6evn28vncnt305fivq6s37i6 بزاریدو در (top build پروژه)build.gradle (Project: NewProject)خطوط زیر را در allprojects  و dependencies  اضافه کنیدallprojects {
    repositories {
        .
        .
        .
        maven {
            url &amp;quothttps://jitpack.io&amp;quot
            credentials { username authToken }
        }
    }
 }و در build.gradle (Module: app)و implementation  که از jitpack گرفتید در و dependencies ها اضافه کنید مال من اینجوریهdependencies {
      implementation &#039;com.gitlab.flashiran1:logshow:0.0.1&#039;
}و Sync کنید میبینید که کتابخونه به پروژه اضافه شدخسته نباشید اموزش تموم شد امیدوارم خوشتون اومده باشه ببخشید بخاطر اینکه یکم زیاد شد چون می خواستم همه رو توضیح بدممنابع که استفاده کردم Publish an Android libraryPrivate RepositoriesPublish an Android Library by JitPackPublish an Android Library by GITLABو خودم :)</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Mon, 30 Mar 2020 21:09:12 +0430</pubDate>
            </item>
                    <item>
                <title>تکه کد های git</title>
                <link>https://virgool.io/@mbfakourii/%D8%AA%DA%A9%D9%87-%DA%A9%D8%AF-%D9%87%D8%A7%DB%8C-git-n6ydenryi02v</link>
                <description>بسم الله الرحمن الرحیمسلام در این قسمت تکه کد هایی که از سایت mohtavaban.com جمع آوری کردم قرار میدم امیدوارم خوشتان بیایدgit init--------------------------------------git status--------------------------------------git add index.html--------------------------------------git add .--------------------------------------git commit -m &amp;quotyour message here&amp;quot--------------------------------------git commit -a -m &amp;quotinitial commit&amp;quot--------------------------------------حذف کلیه فایل ها و فولدرها از stagegit rm --cached -r .--------------------------------------فایل هایی که دچار تغییر شده اند را بهمراه تفاوتgit diff--------------------------------------git log--------------------------------------git log -oneline--------------------------------------git log -2--------------------------------------برای مشاهده جزئیات کامل هر commitgit log -p--------------------------------------لاگ های انجام شده بصورت گرافgit log -graph--------------------------------------برگرداندن حالت قبل از تغییرات commit و افزودن دوباره به stagegit checkout -- index.html--------------------------------------git checkout -- .--------------------------------------ریست کردن commit و تغییرات انجام شده از stage خارج شده و تنها در سطح پروژه موجودgit reset HEAD .--------------------------------------تغییرات انجام شده از stage خارج شده و تنها در سطح پروژه موجود استبرای دریافت Commit-ID باید از log استفاده کنیدgit reset --hard Commit-ID--------------------------------------git branch dev--------------------------------------مشاهده لیست شاخه ها در گیتgit branch -a--------------------------------------git checkout dev--------------------------------------پاک کردن شاخه devgit branch -d dev--------------------------------------ایجاد شاخه و سوئیچ به آن شاخه را بصورت همزمانgit checkout -b develop--------------------------------------از master این کد بزن تو master مرج میشه شاخه developgit merge develop--------------------------------------حذف نکردن تغیرات قبل add به develop و سویچ به mastergit stash--------------------------------------git stash list--------------------------------------git stash drop stash@{0}--------------------------------------git stash save &amp;quotyour message here&amp;quot--------------------------------------محتوای یک Stashgit stash show stash@{1}--------------------------------------دیدن تغییرات داخل stash دوم بصورت مشخص ترgit stash show -p stash@{1}--------------------------------------برگرداندن stashتغییرات واقع در stash موردنظر در شاخه فعال commit می شود اما آن stash از لیست stash ها خارج نمی شودgit stash apply stash@{0}--------------------------------------برگرداندن stashتغییرات واقع در stash موردنظر در شاخه فعال commit می شود و از لیست stash ها خارج می شود git stash pop stash@{0}	--------------------------------------ساخت فایل gitignoregit touch .gitignore--------------------------------------تعریف دستور gitignore در فایلشفولدر  این شکل اد میکنند node_modules/فایل *.txt صرف نظر کردن فایل با!trackit.txt--------------------------------------فایل یا فولدری که قبلا توسط گیت دنبال میشد را دیگر دنبال نکنید (untrack)git rm -cached -r .git add .git commit -m &amp;quotUntrack js folder&amp;quot--------------------------------------ست کردن نام در گیت محلیgit config user.name &amp;quotEhsan Safari&amp;quot--------------------------------------ست کردن نام در گیت سراسریgit config -global user.name &amp;quotEhsan Safari&amp;quot--------------------------------------git config -global user.email &amp;quotEhsanSafari@hotmail.com&amp;quot--------------------------------------git remote add origin https://github.com/Safari66/project-test.git--------------------------------------پوش کردن شاخه master پروژه از طریق ریموت origin git push -u origin master--------------------------------------تمام فایلها و فولدرهای پروژه شما با پروژه موجود در گیت هاب، سینک (Sync) می شوندgit pull origin--------------------------------------git clone https://github.com/Safari66/project-test.git--------------------------------------git remote add origin-NewGitUser https://github.com/NewGitUser/project-test.git--------------------------------------حذف ریموتgit remote remove origin--------------------------------------این پست خلاصه شده پست سایت محتوابان بود برای درک گیت و جزئیات بیشتر به لینک اموزش اصلی مراجعه کنید</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 26 Mar 2020 23:22:29 +0430</pubDate>
            </item>
                    <item>
                <title>تکست ویوی متحرک در اندروید</title>
                <link>https://virgool.io/@mbfakourii/%D8%AA%DA%A9%D8%B3%D8%AA-%D9%88%DB%8C%D9%88-%D9%85%D8%AA%D8%AD%D8%B1%DA%A9-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-ywvbftqmskbg</link>
                <description>بسم الله الرحمن الرحیمسلام تو پروژه که داشتم مینوشتم نیاز شد از یک تکس ویوی متحرک در صفحه بالای چت برای اسم طرف استفاده کنم و ممکنه اسم طرف بزرگ باشه پس یک جوری تو تولبار باید نشونش بدیممن از تکس ویوی متحرک استفاده کردم البته خیلی دنبالش گشتم بیشتر از کلاس های کاستوم استفاده کرده بودند من زیاد خوشم نیومد ولی یکی پیدا کردم که نیاز به کلاس کاستوم نداره گفتم بزارم بقیه هم استفاده کننفقط نیازه در xml تکس ویو رو این شکلی کنید !&lt;TextView
    android:id=&amp;quot@+id/txtmarquee&amp;quot
    android:layout_width=&amp;quotmatch_parent&amp;quot
    android:layout_height=&amp;quotwrap_content&amp;quot
    android:ellipsize=&amp;quotmarquee&amp;quot
    android:focusable=&amp;quottrue&amp;quot
    android:focusableInTouchMode=&amp;quottrue&amp;quot
    android:marqueeRepeatLimit=&amp;quotmarquee_forever&amp;quot
    android:paddingLeft=&amp;quot10dip&amp;quot
    android:paddingRight=&amp;quot10dip&amp;quot
    android:scrollHorizontally=&amp;quottrue&amp;quot
    android:singleLine=&amp;quottrue&amp;quot
    android:text=&amp;quotStarting the marquee animation. This is a marquee text displayed on a TextView. Ending the marquee animation&amp;quot
    app:layout_constraintBottom_toBottomOf=&amp;quotparent&amp;quot
    app:layout_constraintEnd_toEndOf=&amp;quotparent&amp;quot
    app:layout_constraintStart_toStartOf=&amp;quotparent&amp;quot
    app:layout_constraintTop_toTopOf=&amp;quotparent&amp;quot /&gt;نتیجهامیدوارم خوشتون اومده باشه</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Mon, 16 Mar 2020 21:25:07 +0330</pubDate>
            </item>
                    <item>
                <title>فریم‌ورک Lottie (لوتی)</title>
                <link>https://virgool.io/@mbfakourii/%D9%81%D8%B1%DB%8C%D9%85%D9%88%D8%B1%DA%A9-lottie-%D9%84%D9%88%D8%AA%DB%8C-evsomc3dheni</link>
                <description> بسم الله الرحمن الرحیم فکر کنم خیلی دوست داشته باشید انیمیشن های زیر به برنامه اندرویدی تون اضافه کنیدخوب لوتی براتون اینکار رو انجام میده :)اولش بگم تلگرام هم از این روش برای نمایش ایموجی های جدید خودش استفاده میکنه حالا ببین چقدر استاندارد و سبک هست !یک کتابخونه عالی برای اوردن انیمیشن های افتر افکت به اندروید با خروجی که از افتر افکت به شکل json (که خیلی کم حجمه نسبت به اوردن فیلم یا gif) میگیرید میتونید اونو به برنامه اضافه کنید خوب اینم بگم اگه افتر افکت نمیدونید نگران نباشین یک سری از دوستان عزیر :) انیمیشن های که ساختن گذاشتن تو سایت lottiefiles.comو کسانی هم که افترافکت بلدن و میخوان روش گرفتن خروجی بیشتر بدونن میتونن برن تو این لینک یک چیزی که یادم رفت سایت خود فریم‌ورک که هست airbnb.io/lottieمیخواستم نحوه پیاده کردنشو بنویسم دیدم خود سایتش کامل توضیح داده فقط باید کپی پست میکردم که فایده نداشت بعدشم ممکنه بعضی چیزاش بعد ها تغییر کنه لینکشو میزارم ببنید بهتره  airbnb.io/lottie/#/androidالبته فقط مال اندرویدم نیستا با iOS/MacOS و React Native و Web هم میشه پیادش کرد</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Sun, 12 Jan 2020 11:53:07 +0330</pubDate>
            </item>
                    <item>
                <title>تکه کد های مفید intent در اندروید جاوا</title>
                <link>https://virgool.io/@mbfakourii/%D8%AA%DA%A9%D9%87-%DA%A9%D8%AF-%D9%87%D8%A7%DB%8C-%D9%85%D9%81%DB%8C%D8%AF-intent-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D8%AC%D8%A7%D9%88%D8%A7-pswwbfsixp1l</link>
                <description>بسم الله الرحمن الرحیمیکی از مفاهیم بنیادی برنامه نویسی اندروید intent ها هستند.شما بوسیله intent ها می توانید broadcast ها یا service ها را اجرا کنید یا مقادیر موجود در یک اکتیویتی را به اکتیویتی دیگر پاس دهید.در این پست میخوام شما رو با چند intent جالب اشنا کنم امیدوارم خوشتان بیاید*توجه این کد در Android Studio تست شده و کار میکند!۱. اینتنت باز کردن یک سایت با مرور گرگوشیIntent callweb = new Intent(Intent.ACTION_VIEW);
callweb.setData(Uri.parse(\&amp;quothttp://google.com\&amp;quot));
startActivity(callweb);۲. اینتنت باز کردن Google Maps و رفتن به موقعیت داده شده به اینتنتIntent callMap = new Intent(Intent.ACTION_VIEW, Uri.parse(\&amp;quotgeo=36.343 , 96.341\&amp;quot));
startActivity(callMap);۳. اینتنت باز کردن صفعه تماس با شماره داده شده به اینتنتIntent callDial = new Intent(Intent.ACTION_DIAL, Uri.parse(\&amp;quottel:+9333333333\&amp;quot));
startActivity(callDial);</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:53:56 +0330</pubDate>
            </item>
                    <item>
                <title>تبدیل رشته (QString) به عدد در QT و بالعکس</title>
                <link>https://virgool.io/@mbfakourii/%D8%AA%D8%A8%D8%AF%DB%8C%D9%84-%D8%B1%D8%B4%D8%AA%D9%87-qstring-%D8%A8%D9%87-%D8%B9%D8%AF%D8%AF-%D8%AF%D8%B1-qt-%D9%88-%D8%A8%D8%A7%D9%84%D8%B9%DA%A9%D8%B3-icxkxgrgsx5l</link>
                <description>بسم الله الرحمن الرحیمدر این پست میخوام شیوه تبدیل رشته (QString) به عدد در QT و بالعکس قرار بدم امید وارم خوشتان بیایدQString strStringTesti = \&amp;quotiran123\&amp;quot
int x = a.toInt();

QVariant var(x);

QString stringValue = var.toString();</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:49:32 +0330</pubDate>
            </item>
                    <item>
                <title>صفحات دیجیتالی و تاثیر آن ها بر روی چشم</title>
                <link>https://virgool.io/@mbfakourii/%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D8%AF%DB%8C%D8%AC%DB%8C%D8%AA%D8%A7%D9%84%DB%8C-%D9%88-%D8%AA%D8%A7%D8%AB%DB%8C%D8%B1-%D8%A2%D9%86-%D9%87%D8%A7-%D8%A8%D8%B1-%D8%B1%D9%88%DB%8C-%DA%86%D8%B4%D9%85-wrumgszgappi</link>
                <description>بسم الله الرحمن الرحیماغلب که چه عرض کنیم ، اکثر مردم در این روزها با صفحات دیجیتالی در ارتباط هستند اما این صفحات دیجیتالی چه تاثیراتی بر روی چشم دارد ؟ ادامه را مطالعه نمایید.این روزها برای بسیاری ما زندگی خلاصه می شود در صفحات دیجیتالی آبی رنگی که گاهی بدون اینکه متوجه باشیم بدون وقفه ساعت ها به آنها خیره می شویم؛ اما این صفحات جذاب با چشمان ما چه می کنند؟ آیا می توان سر دردهای بدون وقفه و اشک چشم را به گردن همین وسایل دیجیتالی دوست داشتنی انداخت؟بر کسی پوشیده نیست که سبک زندگی کم تحرک و بدون فعالیت عصر حاضر تبعات کوچک و بزرگ بسیاری بر سلامت ما گذاشته است. نشستن های طولانی مدت نه تنها ما را چاق و تنبل کرده است بلکه خطر ابتلا به انواع بیماری ها از جمله سرطان و سکته های قلبی را افزایش می دهد؛ ولی پیامدهای زندگی وابسته به صفحات دیجیتال و صندلی های راحت به همین جا ختم نمی شود. چشمان ما آسیب پذیرترین عضوی هستند که در خاموشی و به تدریج قدرت خود را در اثر این سبک زندگی از دست می دهند.همین موضوع باعث شده در حال حاضر تعداد افراد مبتلا به «فشار چشم دیجیتال» روز به روز با سرعت شتابنده ای افزایش پیدا کند. خشکی و سوزش چشم، دید تار، خستگی چشم، سر درد، کمر و گردن درد از شایع ترین علائم این مشکل هستند. شاید پذیرش این موضوع برای ما سخت باشد ولی استفاده روزانه بیشتر دو ساعت از وسایل دیجیتالی زمینه بروز این علائم را فراهم می کند. این امر زمانی تشدید می شود که کاربران فاصله استاندارد با صفحات دیجیتالی را رعایت نکنند و مدت ها از فاصله ای نزدیک به این صفحان چشم بدوزند.بنا بر تحقیقات انجام شده، در حال حاضر از هر ۱۰ نفر هشت نفر به صورت هم زمان به دو صفحه دیجیتالی نگاه می کنند. افرادی که اغلب جزء کاربران پر مصرف محسوب می شوند و بیشتر از دو ساعت در طول شبانه روز به وسایل دیجیتال خود نگاه می کنند.تمامی این ها در شرایطی است که اغلب مردم صحبت کردن در خصوص این مشکل را ضروری نمی دانند به ندرت برای حل آن یا گرفتن مشورت به سراغ چشم پزشک می روند؛ ولی اگر قرمزی، سوزش و درد چشم به بخشی از زندگی روزانه شما بدل شده است بهتر است پیش از آنکه دیر شود و گرفتار عواقب جدی تر شوید به فکر راه چاره ای اساسی باشید.منبع</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:44:56 +0330</pubDate>
            </item>
                    <item>
                <title>اطلاعات جامعی از Stack Overflow</title>
                <link>https://virgool.io/@mbfakourii/%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%AC%D8%A7%D9%85%D8%B9%DB%8C-%D8%A7%D8%B2-stack-overflow-x2cjdktvugnb</link>
                <description>بسم الله الرحمن الرحیممیخوام امروز شما رو با سایتی اشنا کنم که بیشتر برنامه نویسان با این سایت اشنایی دارین و حداقل ۱ بار به این سایت سر زدن70 امین سایت جهان و پزبازدید ترین سایت تخصصی برنامه نویسی که چند مهندس هندی مبدع آن بودندویکی پدیا آن را این گونه تعریف کرده استیک سایت پرسش و پاسخ درباره ی حوزه وسیعی از مباحث برنامه نویسی و زبان های مختلف برنامه نویسی که توسط جف اتوود و جویل اسپولسکی در سال ۲۰۰۸ ساخته شده است.هدف اصلی این سایت پرسش و پاسخ استشاید نخستین سوالی که در مورد سایت‌های پرسش و پاسخ به ذهن می‌رسد فرق آن‌ها با انجمن‌های گفت‌وگو (forum) ها باشد. در انجمن‌های گفت‌و‌گو  هم کاربران عضو می‌توانند سوالات خود را مطرح کنند و پاسخ کاربران دیگر را ببینند. اما ساختار سایت‌های پرسش و پاسخ کمی متفاوت است. در این سایت‌ها مباحث تنها پیرامون دو نوع محتوای پرسش و پاسخ شکل می‌گیرند. در واقع هدف در چنین سایت‌هایی فقط پرسش و پاسخ است، اگر شما می‌خواهید در مورد سوال مطرح شده از طرف یک کاربر صحبت کنید ولی حرف شما جوابی برای سوال نیست، می‌توانید آن را در قالب کامنت مطرح کنید. بنابراین معمولاً در سایت‌های پرسش و پاسخ خیلی سریعتر از انجمن‌ها به نتیجه می‌رسید.حود سایت در صفعه اولش این چنین خود را معرفی کردهاستک اورفلو یک سایت پرسش و پاسخ برای برنامه نویسان حرفه ای و علاقمند است. استفاده از این سایت ۱۰۰% رایگان است، بدون نیاز به ثبت نامسایت Stack overflow راه بهتری برای پیدا کردن جواب ها ابداع کرده اند. طراحی سایت Stack overflow به نحوی است که امکانی وجود دارد که شما به سوالات و جواب ها رای بدهید همین ویژگی سبب می شود که سولات خوب و جواب آن ها سریعتر یافت شود. همچنین با انتخاب بهترین پاسخ و جواب مانند تالار های گفتگو مجبور نیستید تمامی کامنت ها و پاسخ ها را مطالعه کنید.از امکانات جالب دیگر این سایت این است که به کاربران خود نشانه و مدال میدهد برای مثال اگر شما سوالی بپرسید و یا به سوالی پاسخ دهید و کامنتی قرار دهید و دیگر کاربران به آن رای زیادی دهند امکان دارد شما مدال طالا را دریافت کنید. در کل این سایت ۳ دسته مدال دارد: مدال های طلایی، مدال های نقره ای و مدال های برنز. کاربرانی که این مدال ها را دریافت کرده اند در پروفایلشان در سایت ثبت میشود و  دیگران آن را مشاهده میکنند. همین امر باعث میشود که کاربران سایت شویق به فعالیت در سایت شوند.سایت های  مشابه مانند Server Fault  به سایت خواهر Stack overflow معروف است. البته این سایت پرسش و پاسخ های خود را در زمینه ی Super User و شبکه ارائه میدهد.سایت کینگ نیز یک سایت ایرانی پرسش و پاسخ است که از Stack overflow الهام گرفته است.برخی از مهمترین ویزگی های stackoverflow عبارتند از :۱ : دسترسی به پاسخ مورد نظر بدون گیج کردن کاربر و گم شدن در تبلیغات و نکته های بی ربط۲ : امتیاز دهی به پاسخ ها و درجه بندی پاسخ ها بر حسب امتیاز برای دسترسی به بهترین پاسخ۳ :‌ دسترسی به جذاب ترین و پر بازدید ترین پرسش ها برای افزایش اطلاعات شما۴ : ارائه دستورالعمل گام به گام برای رسیدن به پاسخ سوال مورد نظرو امکانات فوق العاده دیگر ….سایت StackOverflow و سایر سایت های StackExchange بزرگترین مرجع سوال و جواب در اینترنت هستند.سایت StackOverflow مخصوص سوال و جواب برنامه نویسی و طراحی وب است که همراه با ده ها سایت دیگر در زمینه های مختلف از جمله شبکه،آشپزی،مسافرت و … همگی زیرمجموعه StackExchange هستند.رای دادن به سوالات و جواب‌ها: به کمک این ویژگی سوال‌ها و همین‌طور جواب‌های مهم خیلی راحت‌تر پیدا می‌شوند. در واقع این به نوعی پیرو ایده اصلی شکل ‌گیری سایت‌های اشتراک لینک مبتنی بر رای کاربران مثل دیگ(Digg) است.در واقع شما مانند دیگر سایت‌های مبتنی بر رای کاربران صفحه اول و لینک‌های داغ شده‌ای دارید که در این مورد در واقع همان سوال‌ها هستند.انتخاب بهترین جواب: در انجمن‌های گفت‌و‌گو سنتی برای پیدا کردن جواب یک سوال مطرح شده گاهی وقت‌ها مجبور هستید همه جواب‌ها و نظرات داده شده را بخوانید، اما با کمک ویژگی بهترین جواب، علاوه بر اینکه سوالاتی که به جواب رسیده‌اند مشخص می‌شوند، هر کاربر می‌تواند بلافاصله بعد از دیدن سوال، بهترین جواب داده شده را ببیند.ویکی: وقتی سیستم بر اساس الگوریتم‌ها و روش‌هایی که در ادامه در موردشان خواهم گفت به شما اعتماد کند شما می‌توانید یک ویرایش کننده باشید و درست مثل نرم‌افزارهای ویکی همه چیز را ویرایش کنید.بدون ثبت نام عضو شوید!یکی از اولین مسائلی که در برخورد با Stack Overflow‌ پیش می‌آید این است که: بسیار خب، این سایت مفیدی هست، اما چطوری می‌تونم ثبت نام کنم؟ پاسخ این است که شما همین الان عضو هستید و نیازی به ثبت نام ندارید! در واقع Stack Overflow‌ از OpenID پشتیبانی می‌کند بنابراین اگر شما اکانتی در گوگل، یاهو، وردپرس یا دیگر تامین کنندگان OpenID داشته باشید در واقع عضو Stack Overflow هم هستید. کافی است Login‌ کنید.نشان‌ها، مدال‌های افتخار شمایکی از دلایلی که کاربران را به استفاده و مشارکت در Stack Overflow‌ مشتاق می‌کند، نشان‌ها یا Badge‌هایی است که سایت به آن‌ها می‌دهد. این نشان‌ها تنها بر اساس میزان مشارکت نیستند، مثلاً اگر سوالی بپرسید که جواب و کامنت و مشاهده کمی برای یک هفته داشته باشد نشان Tumbleweed را دریافت می‌کنید! نشان‌های Stack Overflow‌ که در سه دسته کلی طلایی، نقره‌ای و برنزی دسته‌بندی شده‌اند در واقع مدال‌های کاربران هستند و به میزان شهرت کاربر کمک می‌کنند. شهرتی که دیگر کاربران می‌توانند روند آن را به صورت یک نمودار در پروفایل هر کاربر ببینند.خانواده Stack OverflowStack Overflow تنها یک سایت نیست، سایت‌های دیگری نیز که به سایت‌های خواهر معروفند با همین ایده شکل گرفته‌اند، از جمله این سایت‌ها به Server Fault که سایت پرسش و پاسخ مخصوص مسائل شبکه و Super User اشاره کرد. البته سایت‌های دیگری هم هستند که از ایده Stack Overflow استفاده کرده‌اند اما نرم افزارشان با نرم افزار Stack Overflow متفاوت استویژگی‌های فنی و پروژه‌های مشابهجالب است بدانید که Stack Overflow‌ با ASP.NET‌ کار شده است. در اینجا می‌توانید لیستی از زبان‌ها و فناوری‌هایی که برای ساخت Stack Overflow استفاده شده است را ببینید. و اینجا هم اطلاعاتی درباره سرور اختصاصی Stack Overflow‌ هست.گرچه نرم افزار Stack Overflow هنوز اپن سورس نشده است (در این مورد زمزمه‌هایی هست)، اما پروژه‌های مشابهی با  php‌ و Ruby on Rails ایجاد شده‌اند.یک نکته دیگر این که اگر به ساخت وب سایتی مشابه Stack Overflow‌ علاقمند شدید باید بدانید که معماری و ساخت نرم افزار Stack Overflow‌ خیلی ساده نیست.Stack Overflow چگونه پول در می‌آورد؟Stack Overflow‌ رایگان است اما چطور هزینه‌های خود را تامین می‌کند و پول در می‌آورد. در واقع دو راه اصلی برای کسب درآمد در Stack Overflow‌ هست، یکی تبلیغات و دیگر ارائه خدمات میزبانی شده سایت‌های پرسش و پاسخ مبتنی بر نرم افزار Stack Overflow. در این روش دوم در واقع شما از طریق سایت Stack Exchange‌ می‌توانید پلتفرم Stack Overflow را برای راه اندازی سایت پرسش و پاسخ خود استفاده کنید.منبع از سایت های ایرانی و خودم :Dموفق باشید</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:39:37 +0330</pubDate>
            </item>
                    <item>
                <title>فقط فارسی نویسی در EditText در اندروید و جاوا</title>
                <link>https://virgool.io/@mbfakourii/%D9%81%D9%82%D8%B7-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%AF%D8%B1-edittext-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D9%88-%D8%AC%D8%A7%D9%88%D8%A7-ybgoqac62wfs</link>
                <description>بسم الله الرحمن الرحیمدر این پست میخوام نحوه فارسی نویسی در اندروید را برای شما شرح بدهم خیلی این کار اسان است برای این کار یک EditText در xml تان بگذارید و مقدار digits ان را به شکل زیر ست کنید&lt;EditText
android:id=”@+id/editText”
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=””
android:textColor=”#000″
android:inputType=”text”
android:digits=”@string/app_lan_fa” /&gt;و در Strings دستور زیر را وارد کنید&lt;string name=”app_lan_fa”&gt;ابپتثجچحخدذرزژسش صضطظعغفقکگلمنوهی&lt;/string&gt;</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:20:42 +0330</pubDate>
            </item>
                    <item>
                <title>محدوده گذاری برای کد در اندروید استدیو</title>
                <link>https://virgool.io/@mbfakourii/%D9%85%D8%AD%D8%AF%D9%88%D8%AF%D9%87-%DA%AF%D8%B0%D8%A7%D8%B1%DB%8C-%D8%A8%D8%B1%D8%A7%DB%8C-%DA%A9%D8%AF-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D8%A7%D8%B3%D8%AA%D8%AF%DB%8C%D9%88-oegeydrlghda</link>
                <description>بسم الله الرحمن الرحیمدر این نوشته میخوام با چند خط دستور در اندروید استدیو اشنا شویم که به زیبایی و قابل خواندن کد کمک میکند امید وارم خوشتان بیاید//region توضیحات
your code ...
endregion</description>
                <category>محمد باقر فکوری</category>
                <author>محمد باقر فکوری</author>
                <pubDate>Thu, 02 Jan 2020 10:12:26 +0330</pubDate>
            </item>
            </channel>
</rss>