【Kotlin】AndroidアプリからWebブラウザでWebサイトを開く方法を徹底解説
この記事では、Kotlinを使ってAndroidアプリケーションから、端末にインストールされているデフォルトのWebブラウザでWebサイトを開く方法を解説します。実装は非常にシンプルで、Intent(インテント)とUriを使うだけで数行のコードで実現できます。
実装の仕組み
Androidでは、Intent.ACTION_VIEWというアクションにURLを指定してstartActivity()を呼び出すことで、システムが自動的に適切なブラウザアプリを選択し、指定したWebサイトを表示してくれます。それでは、具体的な手順を見ていきましょう。
ステップ1:新規プロジェクトを作成する
まず、Android Studioを起動し、「File」→「New Project」を選択して新しいプロジェクトを作成します。必要な項目(プロジェクト名、パッケージ名、保存先など)をすべて入力しましょう。テンプレートには「Empty Activity」を選択しておくとスムーズです。
ステップ2:レイアウトファイル(activity_main.xml)を編集する
次に、res/layout/activity_main.xmlに以下のコードを追加します。ここでは、画面中央に「Amazon」というボタンを配置しています。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="70dp"
android:background="#008080"
android:padding="5dp"
android:text="TutorialsPoint"
android:textColor="#fff"
android:textSize="24sp"
android:textStyle="bold" />
<Button
android:id="@+id/btnAmazon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="Amazon"
android:textStyle="bold" />
</RelativeLayout>ステップ3:MainActivity.ktに処理を記述する
続いて、src/MainActivity.ktに以下のコードを記述します。ボタンがクリックされたタイミングで、Intent(Intent.ACTION_VIEW, Uri.parse(url))を生成し、ブラウザを起動するのがポイントです。
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "KotlinApp"
val button: Button = findViewById(R.id.btnAmazon)
button.setOnClickListener {
val url = "https://www.amazon.com"
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(url)))
}
}
}ステップ4:AndroidManifest.xmlを確認・編集する
最後に、androidManifest.xmlに以下のようにインターネットへのアクセス権限を追加します。外部のWebサイトを開くためには、このパーミッション宣言が必要です。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android" package="com.example.q11">
<uses-permission android:name="android.permission.Internet" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>アプリを実行して動作を確認しよう
それでは、実際にアプリを起動してみましょう。実機のAndroidスマートフォンをPCに接続していることを前提に説明します。Android Studioでプロジェクト内のアクティビティファイルを開き、ツールバーにあるRun(実行)アイコンをクリックしてください。
表示されるダイアログで接続中のモバイル端末を選択すると、アプリが端末にインストールされ、起動します。
動作結果
アプリを起動すると、まず以下のような初期画面が表示されます。
続いて、画面中央の「Amazon」ボタンをタップしてみてください。端末のデフォルトブラウザが自動的に立ち上がり、Amazonのサイトが表示されれば成功です。
まとめ
KotlinでAndroidアプリからWebブラウザを開くのは、Intent.ACTION_VIEWとUri.parse()を組み合わせるだけで簡単に実装できます。URLを変数として渡す仕組みを応用すれば、ニュースアプリやECアプリなど、外部リンクを扱うさまざまなアプリ開発に役立つでしょう。ぜひ自分のプロジェクトでも試してみてください。
-
【Android開発】任意のアプリからWebブラウザでWebサイトを開く方法を解説
概要この記事では、Androidアプリケーションから端末にインストールされたWebブラウザを使って、任意のWebサイトを開く方法を解説します。鍵となるのはIntent(インテント)です。「ACTION_VIEW」アクションとURLを指定してIntentを発行すれば、システムが自動的に適切なブラウザアプリを起動し、目的のサイトを表示してくれます。実装手順ステップ1:新規プロジェクトの作成Android Studioを起動し、「File」⇒「New Project」を選択して新しいプロジェクトを作成します。必要な項目をすべて入力して、プロジェクトの雛形を生成しましょう。ステップ2:レイアウトファイ
-
AndroidアプリからGmailを使ってメールを送信する方法【サンプルコード付きで解説】
この記事では、AndroidアプリケーションからGmailなどのメールアプリを使ってメールを送信する方法を、実際のサンプルコードとともに段階的に解説します。仕組みの概要Androidでメールを送信する場合、Intent(インテント)を使用するのが一般的です。直接SMTPサーバーと通信するのではなく、「ACTION_SEND」という標準インテントを発行することで、端末にインストールされているGmailなどのメールアプリに送信処理を委ねます。この方法なら、認証情報をアプリ内に持つ必要がなく、安全かつ簡単に実装できます。ステップ1:新規プロジェクトを作成するまず、Android Studioで新しい