Skip to content

Commit 610f536

Browse files
authored
Merge pull request #203 from tobexyz/feat/release
prepare release
2 parents e6e8888 + 884f91f commit 610f536

4 files changed

Lines changed: 24 additions & 31 deletions

File tree

yaacc/src/main/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
33
xmlns:tools="http://schemas.android.com/tools"
44
android:versionCode="50000"
5-
android:versionName="5.0.0-SNAPSHOT">
5+
android:versionName="5.0.0">
66

77
<uses-permission android:name="android.permission.INTERNET" />
88
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

yaacc/src/main/java/de/yaacc/util/SAFCacheManager.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ public SAFMetadata getMetadata(DocumentFile file) {
128128
// Migrate old entries without shortId
129129
if (metadata.shortId == null) {
130130
String shortId = getOrCreateShortId(uri);
131-
metadata = new SAFMetadata(metadata.duration, metadata.mimeType, metadata.encodedId, shortId, metadata.fileSize);
131+
metadata = new SAFMetadata(metadata.duration, metadata.mimeType, shortId, metadata.fileSize);
132132
String serialized = metadata.serialize();
133133
lruCache.put(key, serialized);
134134
preferences.edit().putString(key, serialized).apply();
@@ -147,7 +147,7 @@ public SAFMetadata getMetadata(DocumentFile file) {
147147
// Migrate old entries without shortId
148148
if (metadata.shortId == null) {
149149
String shortId = getOrCreateShortId(uri);
150-
metadata = new SAFMetadata(metadata.duration, metadata.mimeType, metadata.encodedId, shortId, metadata.fileSize);
150+
metadata = new SAFMetadata(metadata.duration, metadata.mimeType, shortId, metadata.fileSize);
151151
String serialized = metadata.serialize();
152152
lruCache.put(key, serialized);
153153
preferences.edit().putString(key, serialized).apply();
@@ -179,16 +179,15 @@ public SAFMetadata getMetadata(DocumentFile file) {
179179
}
180180

181181
/**
182-
* Extract all metadata for a file (duration, MIME type, encoded ID).
182+
* Extract all metadata for a file (duration, MIME type, short ID).
183183
*/
184184
private SAFMetadata extractMetadata(DocumentFile file) {
185185
String uri = file.getUri().toString();
186186
String duration = extractDuration(file.getUri());
187187
String mimeType = extractMimeType(file);
188-
String encodedId = encodeUri(uri);
189188
String shortId = getOrCreateShortId(uri);
190189
long fileSize = file.length();
191-
return new SAFMetadata(duration, mimeType, encodedId, shortId, fileSize);
190+
return new SAFMetadata(duration, mimeType, shortId, fileSize);
192191
}
193192

194193
/**
@@ -232,10 +231,6 @@ private String extractMimeType(DocumentFile file) {
232231
return file.getType();
233232
}
234233

235-
private String encodeUri(String uri) {
236-
return new String(android.util.Base64.encode(uri.getBytes(), android.util.Base64.NO_WRAP));
237-
}
238-
239234
private String extractDuration(Uri uri) {
240235
MediaMetadataRetriever retriever = null;
241236
try {

yaacc/src/main/java/de/yaacc/util/SAFMetadata.java

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,32 +23,30 @@
2323
public class SAFMetadata {
2424
public final String duration; // "HH:MM:SS" format
2525
public final String mimeType; // "audio/mpeg", "video/mp4", etc.
26-
public final String encodedId; // Base64 encoded URI (deprecated)
2726
public final String shortId; // Short numeric ID for UPnP
2827
public final long fileSize; // File size in bytes
2928
public final long timestamp; // When cached (System.currentTimeMillis())
3029

31-
public SAFMetadata(String duration, String mimeType, String encodedId, String shortId, long fileSize) {
30+
public SAFMetadata(String duration, String mimeType, String shortId, long fileSize) {
3231
this.duration = duration;
3332
this.mimeType = mimeType;
34-
this.encodedId = encodedId;
3533
this.shortId = shortId;
3634
this.fileSize = fileSize;
3735
this.timestamp = System.currentTimeMillis();
3836
}
3937

4038
// For serialization to SharedPreferences
4139
public String serialize() {
42-
return duration + "|" + mimeType + "|" + encodedId + "|" + shortId + "|" + fileSize + "|" + timestamp;
40+
return duration + "|" + mimeType + "|" + shortId + "|" + fileSize + "|" + timestamp;
4341
}
4442

4543
// For deserialization from SharedPreferences
4644
public static SAFMetadata deserialize(String data) {
4745
if (data == null) return null;
48-
String[] parts = data.split("\\|", 7);
49-
if (parts.length < 4) return null;
50-
String shortId = parts.length >= 5 ? parts[3] : null;
51-
long fileSize = parts.length >= 6 ? Long.parseLong(parts[4]) : 0;
52-
return new SAFMetadata(parts[0], parts[1], parts[2], shortId, fileSize);
46+
String[] parts = data.split("\\|", 6);
47+
if (parts.length < 3) return null;
48+
String shortId = parts.length >= 4 ? parts[2] : null;
49+
long fileSize = parts.length >= 5 ? Long.parseLong(parts[3]) : 0;
50+
return new SAFMetadata(parts[0], parts[1], shortId, fileSize);
5351
}
5452
}

yaacc/src/test/java/de/yaacc/util/SAFMetadataTest.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ public void testCreation() {
3131
SAFMetadata metadata = new SAFMetadata(
3232
"03:45",
3333
"audio/mpeg",
34-
"aHR0cDovL2V4YW1wbGUuY29tL2ZpbGUubXAz",
34+
"1",
3535
5432100L
3636
);
3737

3838
assertEquals("03:45", metadata.duration);
3939
assertEquals("audio/mpeg", metadata.mimeType);
40-
assertEquals("aHR0cDovL2V4YW1wbGUuY29tL2ZpbGUubXAz", metadata.encodedId);
40+
assertEquals("1", metadata.shortId);
4141
assertEquals(5432100L, metadata.fileSize);
4242
assertNotEquals(0L, metadata.timestamp);
4343
}
@@ -47,30 +47,30 @@ public void testSerialize() {
4747
SAFMetadata metadata = new SAFMetadata(
4848
"03:45",
4949
"audio/mpeg",
50-
"encoded_uri",
50+
"1",
5151
1234567L
5252
);
5353

5454
String serialized = metadata.serialize();
55-
// Check format: duration|mimeType|encodedId|fileSize|timestamp
55+
// Check format: duration|mimeType|shortId|fileSize|timestamp
5656
String[] parts = serialized.split("\\|", 5);
5757
assertEquals("03:45", parts[0]);
5858
assertEquals("audio/mpeg", parts[1]);
59-
assertEquals("encoded_uri", parts[2]);
59+
assertEquals("1", parts[2]);
6060
assertEquals("1234567", parts[3]);
6161
assertNotNull(parts[4]); // timestamp
6262
}
6363

6464
@Test
6565
public void testDeserialize() {
66-
String data = "03:45|audio/mpeg|encoded_uri|1234567|1708257600000";
66+
String data = "03:45|audio/mpeg|1|1234567|1708257600000";
6767

6868
SAFMetadata metadata = SAFMetadata.deserialize(data);
6969

7070
assertNotNull(metadata);
7171
assertEquals("03:45", metadata.duration);
7272
assertEquals("audio/mpeg", metadata.mimeType);
73-
assertEquals("encoded_uri", metadata.encodedId);
73+
assertEquals("1", metadata.shortId);
7474
assertEquals(1234567L, metadata.fileSize);
7575
}
7676

@@ -90,7 +90,7 @@ public void testSerializeDeserializeRoundTrip() {
9090
SAFMetadata original = new SAFMetadata(
9191
"01:30:00",
9292
"video/mp4",
93-
"dmlkZW8tbXA0LXVyaQ==",
93+
"2",
9494
9876543L
9595
);
9696

@@ -100,7 +100,7 @@ public void testSerializeDeserializeRoundTrip() {
100100
assertNotNull(deserialized);
101101
assertEquals(original.duration, deserialized.duration);
102102
assertEquals(original.mimeType, deserialized.mimeType);
103-
assertEquals(original.encodedId, deserialized.encodedId);
103+
assertEquals(original.shortId, deserialized.shortId);
104104
assertEquals(original.fileSize, deserialized.fileSize);
105105
}
106106

@@ -110,7 +110,7 @@ public void testNullValues() {
110110

111111
assertNull(metadata.duration);
112112
assertNull(metadata.mimeType);
113-
assertNull(metadata.encodedId);
113+
assertNull(metadata.shortId);
114114
assertEquals(0L, metadata.fileSize);
115115
}
116116

@@ -119,7 +119,7 @@ public void testVideoMimeType() {
119119
SAFMetadata metadata = new SAFMetadata(
120120
"02:15:30",
121121
"video/mp4",
122-
"encoded",
122+
"3",
123123
10000000L
124124
);
125125

@@ -131,7 +131,7 @@ public void testImageMimeType() {
131131
SAFMetadata metadata = new SAFMetadata(
132132
null,
133133
"image/jpeg",
134-
"encoded",
134+
"4",
135135
500000L
136136
);
137137

0 commit comments

Comments
 (0)