<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Android | Engineer Ryo Blog</title>
	<atom:link href="https://engineer-ryo-blog.com/category/android/feed/" rel="self" type="application/rss+xml" />
	<link>https://engineer-ryo-blog.com</link>
	<description></description>
	<lastBuildDate>Tue, 10 Mar 2026 17:38:38 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.1</generator>

<image>
	<url>https://engineer-ryo-blog.com/wp-content/uploads/2022/11/cropped-site-icon-1-32x32.jpg</url>
	<title>Android | Engineer Ryo Blog</title>
	<link>https://engineer-ryo-blog.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>cliでAndroidのエミュレータをCold bootしたい</title>
		<link>https://engineer-ryo-blog.com/2026/03/11/cli%e3%81%a7android%e3%81%ae%e3%82%a8%e3%83%9f%e3%83%a5%e3%83%ac%e3%83%bc%e3%82%bf%e3%82%92cold-boot%e3%81%97%e3%81%9f%e3%81%84/</link>
					<comments>https://engineer-ryo-blog.com/2026/03/11/cli%e3%81%a7android%e3%81%ae%e3%82%a8%e3%83%9f%e3%83%a5%e3%83%ac%e3%83%bc%e3%82%bf%e3%82%92cold-boot%e3%81%97%e3%81%9f%e3%81%84/#respond</comments>
		
		<dc:creator><![CDATA[ryo]]></dc:creator>
		<pubDate>Tue, 10 Mar 2026 17:38:38 +0000</pubDate>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[モバイルアプリ]]></category>
		<category><![CDATA[開発ネタ]]></category>
		<guid isPermaLink="false">https://engineer-ryo-blog.com/?p=240</guid>

					<description><![CDATA[目次 エミュレータを一覧で取得Cold boot エミュレータを一覧で取得 Cold boot]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"></p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">エミュレータを一覧で取得</a></li><li><a href="#toc2" tabindex="0">Cold boot</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">エミュレータを一覧で取得</span></h2>



<pre class="wp-block-code"><code>emulator -list-avds</code></pre>



<h2 class="wp-block-heading"><span id="toc2">Cold boot</span></h2>



<pre class="wp-block-code"><code>emulator -avd {デバイス名} -no-snapshot-load

# 例
# emulator -avd Medium_Phone -no-snapshot-load</code></pre>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://engineer-ryo-blog.com/2026/03/11/cli%e3%81%a7android%e3%81%ae%e3%82%a8%e3%83%9f%e3%83%a5%e3%83%ac%e3%83%bc%e3%82%bf%e3%82%92cold-boot%e3%81%97%e3%81%9f%e3%81%84/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>BlurHashの遅延読み込み(Android Ver.)</title>
		<link>https://engineer-ryo-blog.com/2022/02/27/blurhash-lazy-load/</link>
					<comments>https://engineer-ryo-blog.com/2022/02/27/blurhash-lazy-load/#respond</comments>
		
		<dc:creator><![CDATA[ryo]]></dc:creator>
		<pubDate>Sun, 27 Feb 2022 09:05:00 +0000</pubDate>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[開発ネタ]]></category>
		<guid isPermaLink="false">https://engineer-ryo-blog.com/?p=111</guid>

					<description><![CDATA[目次 BlurHashについて遅延読み込みについて BlurHashについて 日本語に直訳すると「ぼかしハッシュ」 画像をハッシュ(文字列)に変換し、ぼかしたような画像を生成するライブラリ。 詳しくはこちらから(http [&#8230;]]]></description>
										<content:encoded><![CDATA[

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">BlurHashについて</a></li><li><a href="#toc2" tabindex="0">遅延読み込みについて</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">BlurHashについて</span></h2>



<p class="wp-block-paragraph">日本語に直訳すると「ぼかしハッシュ」</p>



<p class="wp-block-paragraph">画像をハッシュ(文字列)に変換し、ぼかしたような画像を生成するライブラリ。</p>



<p class="wp-block-paragraph">詳しくはこちらから(<a href="https://github.com/woltapp/blurhash">https://github.com/woltapp/blurhash</a>)</p>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading"><span id="toc2">遅延読み込みについて</span></h2>



<p class="wp-block-paragraph">遅延読み込み的なことをしたいなと思ったので、実装してみました。</p>



<p class="wp-block-paragraph">まずはサンプルコード</p>



<pre class="wp-block-code"><code>// Fragment
<span class="blue">val</span> handler = Handler(Looper.getMainLooper())
<span class="blue">val</span> runnable = Runnable {
	Picasso.get().load(url).noPlaceholder().into(binding.image)
}
handler.postDelayed(runnable, <span class="green">500</span>)</code></pre>



<p class="wp-block-paragraph">ポイントは、Picassoで画像を読み込む際に、noPlaceholder()を指定することでデフォルトの白いプレースホルダ画像が表示されなくなり、シームレスに画像が表示されるようになります。</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img decoding="async" src="https://engineer-ryo-blog.com/wp-content/uploads/2022/02/Sample20220227.gif" alt="" class="wp-image-113"/></figure></div>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://engineer-ryo-blog.com/2022/02/27/blurhash-lazy-load/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Android + DIの個人的最適解？</title>
		<link>https://engineer-ryo-blog.com/2022/01/03/android-di/</link>
					<comments>https://engineer-ryo-blog.com/2022/01/03/android-di/#respond</comments>
		
		<dc:creator><![CDATA[ryo]]></dc:creator>
		<pubDate>Mon, 03 Jan 2022 14:04:50 +0000</pubDate>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[開発ネタ]]></category>
		<guid isPermaLink="false">https://engineer-ryo-blog.com/?p=100</guid>

					<description><![CDATA[AndroidでDaggerを用いたDIを取り入れていますが、ここ最近自分の中での最適解を見つけたので紹介します。 *初心者なので、コメントなどお待ちしております。 目次 アーキテクチャ概要AppComponent・Ap [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">AndroidでDaggerを用いたDIを取り入れていますが、ここ最近自分の中での最適解を見つけたので紹介します。</p>



<p class="wp-block-paragraph">*初心者なので、コメントなどお待ちしております。</p>



<p class="wp-block-paragraph"></p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">アーキテクチャ概要</a></li><li><a href="#toc2" tabindex="0">AppComponent・AppModuleの中身</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading" id="アーキテクチャ概要"><span id="toc1">アーキテクチャ概要</span></h2>



<p class="wp-block-paragraph">MVVM + DDD(ドメイン駆動開発)を我流アレンジしています。</p>



<p class="wp-block-paragraph">プロジェクト概要はこんな感じ。</p>



<pre class="wp-block-code"><code>./app
  ├── activity
  │     └── MainActivity.kt
  ├── model
  │     └── HogeModel.kt
  ├── fragment
  │     └── HogeFragment.kt
  ├── service
  │     ├── IUserService.kt
  │     └── UserService.kt
  ├── repository
  │     ├── <span class="marker">BaseRepository.kt</span> (基底クラス) ←ポイント
  │     └── UserRepository.kt
  └── viewmodel
  │     └── HogeViewModel.kt
  ├── AppComponent.kt
  └── AppCModule.kt</code></pre>



<p class="wp-block-paragraph"></p>



<h2 class="wp-block-heading" id="appcomponent-appmoduleの中身"><span id="toc2">AppComponent・AppModuleの中身</span></h2>



<p class="wp-block-paragraph">AppComponent</p>



<pre class="wp-block-code"><code>@Singleton
@Component(modules = &#91;AppModule::class])
interface AppComponent {
    fun inject(repository: BaseRepository)
}</code></pre>



<p class="wp-block-paragraph">AppModule</p>



<pre class="wp-block-code"><code>@Module
class AppModule {
    @Singleton
    @Provides
    internal fun providesLoginService(): IUserService {
        return UserService()
    }
}</code></pre>



<p class="wp-block-paragraph">基底クラスであるBaseRepositoryに対し、依存性を注入しています。(継承した子クラスごとに記述したくないと考えたため)</p>



<p class="wp-block-paragraph">これにより、Base repositoryを継承しておけば、DIが楽になります。</p>



<p class="wp-block-paragraph">※大規模開発の場合、上記運用が辛いかもしれません&#8230;</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph"></p>
]]></content:encoded>
					
					<wfw:commentRss>https://engineer-ryo-blog.com/2022/01/03/android-di/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
