<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Mehmet</title>
    <description>The latest articles on Forem by Mehmet (@tewhem).</description>
    <link>https://forem.com/tewhem</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F641822%2Fb1b9d1c5-b8f7-48a2-af45-ec47ee29b911.png</url>
      <title>Forem: Mehmet</title>
      <link>https://forem.com/tewhem</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/tewhem"/>
    <language>en</language>
    <item>
      <title>Flutter Starting Template</title>
      <dc:creator>Mehmet</dc:creator>
      <pubDate>Sat, 08 Jul 2023 21:28:46 +0000</pubDate>
      <link>https://forem.com/tewhem/flutter-starting-template-12dl</link>
      <guid>https://forem.com/tewhem/flutter-starting-template-12dl</guid>
      <description>&lt;p&gt;Exciting Flutter Template Available! Kickstart Your Projects with Ease! 🚀&lt;/p&gt;

&lt;p&gt;I'm thrilled to share a comprehensive Flutter template that showcases best practices and empowers developers to jumpstart their Flutter projects effortlessly. 🎉&lt;/p&gt;

&lt;p&gt;📝 Description: This template is packed with pre-built pages, seamless Provider integration, and robust HTTP handling. It encompasses the industry's best practices, allowing you to accelerate your development process and deliver high-quality Flutter apps efficiently. 💪&lt;/p&gt;

&lt;p&gt;🌐 Whether you're a seasoned developer or just starting your Flutter journey, this template provides a solid foundation for your projects. It's designed to save you time and effort by offering reusable components and a well-structured codebase. ⏰&lt;/p&gt;

&lt;p&gt;✨ Key Features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Pre-built pages: Get a head start with a collection of ready-to-use pages, reducing your development time.&lt;/li&gt;
&lt;li&gt;Provider integration: Leverage the power of Provider to manage state effortlessly and build scalable apps.&lt;/li&gt;
&lt;li&gt;HTTP handling: Streamline your API interactions with robust HTTP handling, ensuring smooth communication with your backend.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🤝 I invite you to explore this open-source project on GitHub and support its growth. Check out the project repository here: &lt;a href="https://github.com/mehmet-karagoz/flutter-boilerplate"&gt;https://github.com/mehmet-karagoz/flutter-boilerplate&lt;/a&gt; 🚀&lt;/p&gt;

&lt;p&gt;💡 Remember, open-source projects thrive with community involvement. Feel free to contribute, provide feedback, or suggest enhancements. Let's collaborate and create amazing Flutter experiences together! 🌟&lt;/p&gt;

&lt;h1&gt;
  
  
  Flutter #OpenSource #Template #GitHub #DeveloperCommunity
&lt;/h1&gt;

</description>
      <category>flutter</category>
      <category>mobile</category>
      <category>dart</category>
      <category>community</category>
    </item>
    <item>
      <title>How to convert kivy/kivymd app to apk in Windows?</title>
      <dc:creator>Mehmet</dc:creator>
      <pubDate>Wed, 01 Sep 2021 16:31:44 +0000</pubDate>
      <link>https://forem.com/tewhem/how-to-convert-kivy-kivymd-app-to-apk-in-windows-2m38</link>
      <guid>https://forem.com/tewhem/how-to-convert-kivy-kivymd-app-to-apk-in-windows-2m38</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;In this article, I will explain how we can convert a cross-platform application made using kivy/kivymd in python on Windows to an APK file without the need for a Linux machine. For this, I will use the online platform called &lt;a href="https://colab.research.google.com/notebooks/intro.ipynb"&gt;Google Colab&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;After logging into google colab, let's prepare the environment for the conversion process. Do not forget to upload the project you are working on. Follow these commands step by step:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt install -y git zip unzip openjdk-8-jdk python3-pip autoconf libtool pkg-config zlib1g-dev libncurses5-dev libncursesw5-dev libtinfo5 cmake libffi-dev libssl-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip3 install --upgrade Cython==0.29.19 virtualenv
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!export PATH=$PATH:~/.local/bin/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!pip install buildozer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt-get install -y \
    python3-pip \
    build-essential \
    git \
    python3 \
    python3-dev \
    ffmpeg \
    libsdl2-dev \
    libsdl2-image-dev \
    libsdl2-mixer-dev \
    libsdl2-ttf-dev \
    libportmidi-dev \
    libswscale-dev \
    libavformat-dev \
    libavcodec-dev \
    zlib1g-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt-get install -y \
    python3-pip \
    build-essential \
    git \
    python3 \
    python3-dev \
    ffmpeg \
    libsdl2-dev \
    libsdl2-image-dev \
    libsdl2-mixer-dev \
    libsdl2-ttf-dev \
    libportmidi-dev \
    libswscale-dev \
    libavformat-dev \
    libavcodec-dev \
    zlib1g-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev zlib1g-dev libssl-dev openssl libgdbm-dev libgdbm-compat-dev liblzma-dev libreadline-dev libncursesw5-dev libffi-dev uuid-dev libffi6
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!sudo apt-get install libffi-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now our environment is ready. We can start the conversion process. We will use buildozer for this. Run this command to start Buildozer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!buildozer init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This command will create a configuration file named buildozer.spec for us. Now it's time to edit this file. At least you should change the;&lt;br&gt;
&lt;code&gt;title&lt;/code&gt;, &lt;code&gt;package.name&lt;/code&gt;, &lt;code&gt;package.domain&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;After changing these, my suggestion is to make some more changes to avoid some problems. Let's look at &lt;code&gt;source.dir&lt;/code&gt; first, if your &lt;code&gt;main.py&lt;/code&gt; file is in the same directory, there is no need to change it, but if not, you should write the &lt;code&gt;path&lt;/code&gt; here. &lt;/p&gt;

&lt;p&gt;Afterwards, if you have used separate files such as png, txt, csv in the program, you should add the extension to &lt;code&gt;source.include_exts&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Now let's change the most important, &lt;code&gt;requirements&lt;/code&gt;. If you only used kivy, &lt;code&gt;python3,kivy==2.0.0rc4&lt;/code&gt; will be enough to do it this way.If you also used kivymd then you should add this &lt;code&gt;https://github.com/kivymd/KivyMD/archive/master.zip&lt;/code&gt;. If you have used other libraries, run the &lt;code&gt;pip install &amp;lt;library-name&amp;gt;&lt;/code&gt; command, and it will show the downloaded packages. You can add them without specifying the version. &lt;/p&gt;

&lt;p&gt;If you want to use icon you can uncomment &lt;code&gt;icon.filename&lt;/code&gt; and you can edit the path. &lt;/p&gt;

&lt;p&gt;If you want your app to be fullscreen, you can make &lt;code&gt;fullscreen&lt;/code&gt; 1.&lt;/p&gt;

&lt;p&gt;We will need to clone &lt;a href="https://github.com/kivy/python-for-android"&gt;python-for-android&lt;/a&gt; to avoid problems such as not showing some symbols.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!git clone &amp;lt;git-link-of-forked-repo&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then we need to edit it in spec file.&lt;code&gt;p4a.source_dir = /path/to/your/python-for-android&lt;/code&gt; and &lt;code&gt;p4a.branch = develop&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;Finally, if you need permissions on android you have to write them.We are done with spec file for now. &lt;/p&gt;

&lt;p&gt;Now we can start the conversion process by this command:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;!buildozer -v android debug
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When you first run this process, it may take up to 15-20 minutes depending on your internet speed. When the process is finished, your bin/*.apk file is ready and you can download it to the phone.&lt;/p&gt;

&lt;p&gt;If the application does not work, you can create a log file from the phone. For this, try to run the application after clicking on the settings / developer option / bug report. After waiting for a while, it will also show the process in the notification bar. You can now see the errors by sharing it to your computer.&lt;/p&gt;

&lt;p&gt;You can also check out my &lt;a href="https://github.com/mehmet-karagoz/Learn-New-Language-With-Srt-Files"&gt;project&lt;/a&gt; that I made using kivymd.&lt;/p&gt;

&lt;p&gt;Mehmet Karagoz.&lt;/p&gt;

&lt;h2&gt;
  
  
  Resources
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://buildozer.readthedocs.io/en/latest/installation.html"&gt;Buildozer Installation&lt;/a&gt;&lt;br&gt;
&lt;a href="https://buildozer.readthedocs.io/en/latest/specifications.html"&gt;Spec file&lt;/a&gt;&lt;br&gt;
&lt;a href="https://buildozer.readthedocs.io/en/latest/quickstart.html"&gt;Running&lt;/a&gt;&lt;br&gt;
&lt;a href="https://buildozer.readthedocs.io/en/latest/contribute.html"&gt;p4a&lt;/a&gt;&lt;br&gt;
&lt;a href="https://towardsdatascience.com/3-ways-to-convert-python-app-into-apk-77f4c9cd55af"&gt;in addition&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>android</category>
      <category>kivy</category>
      <category>kivymd</category>
    </item>
  </channel>
</rss>
