<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های ابوالفضل کریمیان</title>
        <link>https://virgool.io/feed/@m_44387543</link>
        <description>برنامه نویس اندروید, علاقه مند به یادگیری و اشتراک دانش</description>
        <language>fa</language>
        <pubDate>2026-07-06 11:03:57</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/2473225/avatar/zWHHCE.jpg?height=120&amp;width=120</url>
            <title>ابوالفضل کریمیان</title>
            <link>https://virgool.io/@m_44387543</link>
        </image>

                    <item>
                <title>چطور از Gemini در اندروید استودیو استفاده کنیم؟</title>
                <link>https://virgool.io/@m_44387543/%DA%86%D8%B7%D9%88%D8%B1-%D8%A7%D8%B2-gemini-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D8%A7%D8%B3%D8%AA%D9%88%D8%AF%DB%8C%D9%88-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%DA%A9%D9%86%DB%8C%D9%85-vtekq1qewgqn</link>
                <description>گوگل اخیراً سرویس هوش مصنوعی خودش یعنی Gemini رو وارد اندروید استودیو کرده. این یعنی برنامه‌نویس‌ها دیگه لازم نیست برای گرفتن جواب سریع یا تولید کد نمونه، مدام بین مرورگر و محیط کدنویسی جابه‌جا بشن. حالا همه‌چیز مستقیماً توی همون محیط توسعه در دسترسه.چرا این قابلیت مهمه؟یکی از بزرگ‌ترین چالش‌های برنامه‌نویسی اینه که وقتی گیر می‌کنی، وقت زیادی برای سرچ و پیدا کردن جواب تلف می‌شه. با Gemini می‌تونی بدون ترک کردن محیط کار، راه‌حل بگیری، کد رو تکمیل کنی یا حتی پیشنهاد بهینه‌سازی داشته باشی.فعال‌سازی Gemini در اندروید استودیوآخرین نسخه‌ی اندروید استودیو رو نصب یا به‌روزرسانی کن (Electric Eel به بعد).از منوی بالا به Settings &gt; Tools &gt; AI Assistant برو.گزینه‌ی Enable Gemini in Android Studio رو فعال کن.لازمه با اکانت گوگل لاگین کنی تا دسترسی به Gemini باز بشه.بعد از این کار، یه پنل جدید سمت راست یا پایین اندروید استودیو اضافه می‌شه که گفت‌وگو با Gemini از همون‌جا انجام می‌شه.چه کارهایی می‌شه باهاش کرد؟پرسیدن سوال‌های برنامه‌نویسی:مثلاً بپرسی &quot;چطور می‌تونم یک RecyclerView با DiffUtil بسازم؟&quot; و جواب همراه با کد می‌گیری.تولید نمونه‌کد:وقتی نمی‌دونی دقیقاً چه کدی باید بنویسی، می‌تونی Gemini رو راهنمایی کنی تا یه ساختار اولیه بسازه.توضیح کدهای پیچیده:اگر یه فایل کد سنگین داری، می‌تونی ازش بخوای خط‌به‌خط توضیح بده.یافتن خطاها:گاهی خطاها طولانی و نامفهوم هستن. با کپی کردن ارور داخل Gemini، توضیح ساده و راه‌حل پیشنهادی می‌گیری.تجربه کاربری چطور بوده؟خیلی‌ها می‌گن Gemini سرعت رفع مشکل رو بالا برده. به‌خصوص وقتی تازه‌کار باشی و بخوای سریع یاد بگیری، دیگه نیازی نیست کلی مقاله بخونی تا جواب یه سوال ساده رو پیدا کنی.البته باید حواست باشه همیشه جواب درست نیست. بهتره بعد از گرفتن کد یا راهکار، خودت هم بررسی کنی.وضعیت فعلی برای کاربران ایرانیطبق صفحه «Gemini availability» در سایت رسمی توسعه‌دهندگان Android، ایران جزو کشورهای پشتیبانی‌شده نیست .کاربران در پلتفرم‌هایی مثل StackOverflow و Reddit هم گزارش داده‌اند که در ایران هنگام تلاش برای فعال‌سازی Gemini با پیغام «در کشور شما در دسترس نیست» مواجه می‌شن. حتی با نسخه‌های جدید Android Studio.راه‌حل‌های غیررسمی (با محدودیت‌ها)در جوامع آنلاین مثل Reddit، برخی کاربران توصیه‌هایی ارائه داده‌اند مثل:ساخت اکانت گوگل با آیتم‌های پرداخت مرتبط با کشور پشتیبانی‌شده (مثل آمریکا).استفاده از VPN برای متصل شدن به IP کشوری مثل آمریکا یا اروپا هنگام تنظیم اولیه.باز و بستن Google Play و Gemini در پروفایل جدید تا شرایط قبول‌شدن فعال‌سازی فراهم بشه.این روش‌ها ممکنه بعضی وقت‌ها جواب بده، اما:به‌روزرسانی‌ها ممکنه محدودیت‌ها رو تشدید کنه.استفاده از VPN یا تغییر اکانت، ریسک‌های امنیتی و حریم خصوصی داره.هیچ‌کدوم روش رسمی و پایدار نیست و همیشه ممکنه شکست بخوره.جمع‌بندیGemini توی اندروید استودیو یه دستیار هوشمنده که می‌تونه خیلی از کارای روزمره برنامه‌نویسی رو راحت‌تر کنه. فعال‌سازی‌ش هم فقط چند دقیقه زمان می‌بره. اگه اهل اندروید دولوپمنت هستی، امتحان کردنش می‌تونه تجربه جذابی باشه.</description>
                <category>ابوالفضل کریمیان</category>
                <author>ابوالفضل کریمیان</author>
                <pubDate>Tue, 19 Aug 2025 12:54:31 +0330</pubDate>
            </item>
                    <item>
                <title>تغییرات دسترسی External Storage در اندروید 11 به بالا</title>
                <link>https://virgool.io/@m_44387543/%D8%AA%D8%BA%DB%8C%DB%8C%D8%B1%D8%A7%D8%AA-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-external-storage-%D8%AF%D8%B1-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-11-%D8%A8%D9%87-%D8%A8%D8%A7%D9%84%D8%A7-p14qwqa4ynoj</link>
                <description>همونطور که از عنوان مشخصه دسترسی به external storage در اندروید 11 (API 30) به بالا دچار تغییراتی شده که ممکنه برای برنامه نویسان اندروید مشکلاتی در پی داشته باشه خصوصا اگر قرار باشه فایلی رو در حافظه ذخیره کنن یا بخوان از عکس یا فیلم و.. استفاده کنن.به طور خلاصه بخوام بگم شما در اندروید 11 به بالا دیگه نمیتونید تو فایل های خارج از اپلیکیشنتون (همون فایل منیجر گوشیتون منظورمه) چیزی ذخیره کنید.اول از ReadExternalStorage شروع می کنم که تبدیل شده به ReadMediaVideo, ReadMediaImage و ReadMediaAudio که اگر دسترسی دوتای اول رو بخواید با یک دیالوگ از کاربر گرفته میشه و برای سومی یک دیالوگ جدا نمایش داده میشه.برای WriteExternalStorage هم دوتا راه وجود داره :-- اول اینکه میتونید از دسترسی ManageExternalStorage استفاده کنید.فقط نکتش اینه اگر برنامه ای که نوشتید برای مثال آنتی ویروس یا همچین چیزی باشه میتونید از این دسترسی استفاده کنید چون اگر بخواید با همین دسترسی برنامه رو پابلیشش کنید گوگل بهتون گیر میده و باید دلیل خوبی براش بیارید تا قبول کنه.-- دومین راه اینه که فایلی که میخواید رو تو Internal Storage ذخیره کنید.یعنی یه دایرکتوری تو مسیر پکیج نیم اپلیکیشنتون ساخته میشه و نیازی به دسترسی هم نداره.مثلا اینجوریcontext.getExternalFilesDir(Environment.DIRECTORY_DOWNLOADS).toString.plus(&quot;/&quot;).plus(fileName)نکته بعدی هم اینه که برای هندل دسترسی ها دیگه از OnActivityResult نمیشه استفاده کرد چون دپریکیت شده و به جاش باید با ActivityResultLauncher کار کنید.این مطالب صرفا درک شخصی منه که سعی کردم مختصر و مفید باهاتون به اشتراک بذارم و اگر کم و کاستی داره خیلی خوشحال میشم بهم بگید و کاملش کنیم.در نهایت لینک یک پروژه دانلود منیجر رو برای درک بهتر این موضوع میذارم که البته خودم ننوشتمش ولی مفیده.https://github.com/devrath/ubiquitous-downloadmanager</description>
                <category>ابوالفضل کریمیان</category>
                <author>ابوالفضل کریمیان</author>
                <pubDate>Wed, 03 May 2023 12:01:01 +0330</pubDate>
            </item>
            </channel>
</rss>