Sharing is caring!

Här är en steg-för-steg-tutorial för att skapa en enkel ficklampa-app i Android med Java. Koden är formaterad så att du kan kopiera och klistra in den direkt i WordPress med kodblock. Vi kommer att skapa en app som slår på och av enhetens ficklampa.

Förutsättningar

  • Du behöver Android Studio installerat på din dator.
  • Grundläggande kunskap om Java och Android-utveckling.

Steg 1: Skapa ett nytt Android-projekt

  1. Öppna Android Studio och skapa ett nytt projekt.
  2. Välj “Empty Activity” som startaktivitet.
  3. Namnge ditt projekt, till exempel FlashlightApp, och se till att välja Java som programmeringsspråk.
  4. Klicka på “Finish”.

Steg 2: Lägg till nödvändiga behörigheter

Öppna AndroidManifest.xml och lägg till följande kod för att ge appen tillstånd att använda kamerans ficklampa:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.flashlightapp">

    <uses-permission android:name="android.permission.CAMERA" />
    <uses-feature android:name="android.hardware.camera.flash" />

    <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/Theme.FlashlightApp">
        <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>

Steg 3: Skapa användargränssnittet

Öppna activity_main.xml i res/layout och lägg till en knapp för att slå på och av ficklampan:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/btnToggleFlashlight"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="Toggle Flashlight" />

</RelativeLayout>

Steg 4: Lägg till Java-kod för att kontrollera ficklampan

Öppna MainActivity.java och skriv följande kod:

package com.example.flashlightapp;

import android.hardware.camera2.CameraAccessException;
import android.hardware.camera2.CameraManager;
import android.os.Bundle;
import android.content.Context;
import android.widget.Button;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private boolean isFlashOn = false;
    private CameraManager cameraManager;
    private String cameraId;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btnToggleFlashlight = findViewById(R.id.btnToggleFlashlight);
        cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);

        try {
            cameraId = cameraManager.getCameraIdList()[0];
        } catch (CameraAccessException e) {
            e.printStackTrace();
        }

        btnToggleFlashlight.setOnClickListener(view -> toggleFlashlight());
    }

    private void toggleFlashlight() {
        try {
            if (isFlashOn) {
                cameraManager.setTorchMode(cameraId, false);
                isFlashOn = false;
                Toast.makeText(this, "Flashlight Off", Toast.LENGTH_SHORT).show();
            } else {
                cameraManager.setTorchMode(cameraId, true);
                isFlashOn = true;
                Toast.makeText(this, "Flashlight On", Toast.LENGTH_SHORT).show();
            }
        } catch (CameraAccessException e) {
            e.printStackTrace();
            Toast.makeText(this, "Error toggling flashlight", Toast.LENGTH_SHORT).show();
        }
    }
}

Steg 5: Testa appen

  1. Anslut en Android-enhet med en ficklampa (eller använd en emulator som stöder detta).
  2. Kör appen på enheten.
  3. Klicka på knappen “Toggle Flashlight” för att slå på och av ficklampan.

Förklaring av koden

  • CameraManager används för att kontrollera kamerans hårdvara.
  • setTorchMode() används för att slå på eller av ficklampan.
  • Vi använder en try-catch-block för att hantera eventuella undantag som kan uppstå när vi försöker få åtkomst till kameran.

Felsökning

  • Om appen inte fungerar på vissa enheter, kontrollera att enheten har en ficklampa och att den är korrekt konfigurerad i systemet.
  • Kontrollera också att du har lagt till nödvändiga tillstånd i AndroidManifest.xml.

Slutsats

Den här tutorialen visade hur du skapar en enkel ficklampa-app på Android med Java. Genom att använda Androids Camera2 API kan du enkelt kontrollera ficklampan på enheten.

Categories: Android

Jakob Andersson

Hej mitt namn är Jakob och är 41 år gammal. Jag gillar att skapa saker i CAD. Använder mest FreeCAD och Fusion 360, men har testat de flesta CAD-program. Jag programmerar också i c#, python och Java. Skapar även appar i Android. Tycker även om fraktaler och att fotografera. Långa promenader i naturen är också skönt.

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.