Files
podlite/res/layout/activity_player.xml
XoséandClaude Opus 5.5 666a7eb8cd Podlite 1.12: a build for Android 4.1 (Xperia J) with ExoPlayer, speed and skip silences
- One build per Android level, as in Tenda and Plexamp Lite: build/Podlite.apk (Android 2.2+, versionCode 1308) and
  build/Podlite-api16.apk (Android 4.1+, 1316), from shared src/ plus platform/api8 or platform/api16; build.sh now
  runs on the local toolchain (aapt2, dx or R8, signapk.py; the JKS key converted for the run).
- Android 4.1 build: ExoPlayer 2.18.7 behind an Engine interface, with playback speed (player header) and skipping
  silences (Settings), a 3-minute buffer and MediaPlayer as fallback for audio it can't decode; a notification and
  lock screen with the cover and buttons; Holo; a menu button on phones without a Menu key; metered networks for
  "download on Wi-Fi only".
- Both builds: tlskit's Http.abort fix (a finished response's pooled connection is no longer closed under a later
  request); the lock screen's and newer headsets' play/pause keys.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 21:56:18 +01:00

188 lines
6.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<LinearLayout style="@style/Header" android:orientation="horizontal">
<TextView
android:id="@+id/show"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:paddingRight="10dp"
android:textSize="@dimen/header_sub"
android:textStyle="bold"
android:textColor="@color/accent_light"
android:singleLine="true"
android:ellipsize="end"
android:background="@drawable/row_sel" />
<!-- Android 4.1 build: playback speed -->
<Button
android:id="@+id/speed"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:minWidth="@dimen/header_h"
android:paddingLeft="8dp"
android:paddingRight="8dp"
android:background="@drawable/row_sel"
android:textColor="@color/accent_light"
android:textSize="@dimen/header_sub"
android:textStyle="bold"
android:visibility="gone" />
<ImageButton
android:id="@+id/menu"
android:layout_width="@dimen/header_h"
android:layout_height="fill_parent"
android:background="@drawable/row_sel"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="8dp"
android:gravity="center_vertical">
<ImageView
android:id="@+id/cover"
android:layout_width="@dimen/cover_player"
android:layout_height="@dimen/cover_player"
android:layout_marginRight="10dp"
android:scaleType="centerCrop"
android:background="@color/surface" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="@dimen/player_title"
android:textStyle="bold"
android:textColor="@color/text"
android:maxLines="3"
android:ellipsize="end" />
<TextView
android:id="@+id/date"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:textSize="@dimen/player_meta"
android:textColor="@color/sub"
android:singleLine="true" />
<TextView
android:id="@+id/status"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:textSize="@dimen/player_meta"
android:textColor="@color/fresh"
android:maxLines="2"
android:ellipsize="end" />
</LinearLayout>
</LinearLayout>
<SeekBar
android:id="@+id/seek"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="18dp"
android:paddingRight="18dp"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:minHeight="@dimen/seek_track"
android:maxHeight="@dimen/seek_track"
android:progressDrawable="@drawable/seek_track"
android:thumb="@drawable/seek_thumb"
android:thumbOffset="13dp"
android:max="1000" />
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="12dp"
android:paddingRight="12dp">
<TextView
android:id="@+id/pos"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:textSize="@dimen/player_time"
android:textColor="@color/sub" />
<TextView
android:id="@+id/left"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:textSize="@dimen/player_time"
android:textColor="@color/sub" />
</RelativeLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
android:paddingTop="4dp"
android:paddingBottom="8dp">
<Button
android:id="@+id/back"
android:layout_width="@dimen/skip_w"
android:layout_height="@dimen/skip_h"
android:background="@drawable/btn_flat"
android:textColor="@color/text"
android:textSize="@dimen/skip_text"
android:textStyle="bold" />
<ImageButton
android:id="@+id/play"
android:layout_width="@dimen/play_w"
android:layout_height="@dimen/play_h"
android:layout_marginLeft="@dimen/play_gap"
android:layout_marginRight="@dimen/play_gap"
android:background="@drawable/btn_round"
android:src="@drawable/ic_play" />
<Button
android:id="@+id/fwd"
android:layout_width="@dimen/skip_w"
android:layout_height="@dimen/skip_h"
android:background="@drawable/btn_flat"
android:textColor="@color/text"
android:textSize="@dimen/skip_text"
android:textStyle="bold" />
</LinearLayout>
<View android:layout_width="fill_parent" android:layout_height="1px" android:background="@color/line" />
<ScrollView
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:fadingEdge="vertical">
<TextView
android:id="@+id/desc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:textSize="@dimen/player_desc"
android:textColor="@color/sub"
android:lineSpacingExtra="3dp" />
</ScrollView>
</LinearLayout>