chore(android): versionCode 2, eas.json profiles, avatar PNG fix
- app.config.ts: android.versionCode 2 (was 1) - eas.json: development/preview/production profiles, EXPO_PUBLIC_API_URL=staging, appVersionSource=local, autoIncrement=false - avatars: switch DiceBear endpoint /svg -> /png — RN <Image> can't decode SVG, Hero-Avatars rendered transparent/blank on Android Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
dd3d8c6667
commit
bcc6e5cba1
@ -36,6 +36,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
|
|||||||
|
|
||||||
android: {
|
android: {
|
||||||
package: "org.rebreak.app",
|
package: "org.rebreak.app",
|
||||||
|
versionCode: 2,
|
||||||
adaptiveIcon: {
|
adaptiveIcon: {
|
||||||
// Play-Console-Icon (rebreak_android.png) verwenden — wird durch Adaptive-Mask
|
// Play-Console-Icon (rebreak_android.png) verwenden — wird durch Adaptive-Mask
|
||||||
// gecropped (Kreis/Squircle), evtl. Edges leicht beschnitten je nach Design.
|
// gecropped (Kreis/Squircle), evtl. Edges leicht beschnitten je nach Design.
|
||||||
|
|||||||
@ -1,12 +1,15 @@
|
|||||||
{
|
{
|
||||||
"cli": {
|
"cli": {
|
||||||
"version": ">= 5.0.0",
|
"version": ">= 5.0.0",
|
||||||
"appVersionSource": "remote"
|
"appVersionSource": "local"
|
||||||
},
|
},
|
||||||
"build": {
|
"build": {
|
||||||
"development": {
|
"development": {
|
||||||
"developmentClient": true,
|
"developmentClient": true,
|
||||||
"distribution": "internal",
|
"distribution": "internal",
|
||||||
|
"env": {
|
||||||
|
"EXPO_PUBLIC_API_URL": "https://staging.rebreak.org"
|
||||||
|
},
|
||||||
"ios": {
|
"ios": {
|
||||||
"simulator": false
|
"simulator": false
|
||||||
},
|
},
|
||||||
@ -16,24 +19,30 @@
|
|||||||
},
|
},
|
||||||
"preview": {
|
"preview": {
|
||||||
"distribution": "internal",
|
"distribution": "internal",
|
||||||
|
"env": {
|
||||||
|
"EXPO_PUBLIC_API_URL": "https://staging.rebreak.org"
|
||||||
|
},
|
||||||
"ios": {
|
"ios": {
|
||||||
"resourceClass": "m-medium",
|
"resourceClass": "m-medium",
|
||||||
"autoIncrement": true
|
"autoIncrement": false
|
||||||
},
|
},
|
||||||
"android": {
|
"android": {
|
||||||
"buildType": "apk",
|
"buildType": "apk",
|
||||||
"autoIncrement": true
|
"autoIncrement": false
|
||||||
},
|
},
|
||||||
"channel": "preview"
|
"channel": "preview"
|
||||||
},
|
},
|
||||||
"production": {
|
"production": {
|
||||||
|
"env": {
|
||||||
|
"EXPO_PUBLIC_API_URL": "https://staging.rebreak.org"
|
||||||
|
},
|
||||||
"ios": {
|
"ios": {
|
||||||
"resourceClass": "m-medium",
|
"resourceClass": "m-medium",
|
||||||
"autoIncrement": true
|
"autoIncrement": false
|
||||||
},
|
},
|
||||||
"android": {
|
"android": {
|
||||||
"buildType": "app-bundle",
|
"buildType": "app-bundle",
|
||||||
"autoIncrement": true
|
"autoIncrement": false
|
||||||
},
|
},
|
||||||
"channel": "production"
|
"channel": "production"
|
||||||
}
|
}
|
||||||
@ -46,7 +55,7 @@
|
|||||||
"appleTeamId": "84BQ7MTFYK"
|
"appleTeamId": "84BQ7MTFYK"
|
||||||
},
|
},
|
||||||
"android": {
|
"android": {
|
||||||
"serviceAccountKeyPath": "<USER: lokaler Pfad zu Google-Cloud-Service-Account-JSON, z.B. ~/secrets/rebreak-play-service-account.json>",
|
"serviceAccountKeyPath": "<TODO: lokaler Pfad zu Google-Cloud-Service-Account-JSON, z.B. ~/secrets/rebreak-play-service-account.json>",
|
||||||
"track": "internal"
|
"track": "internal"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,7 +5,9 @@ export interface HeroAvatar {
|
|||||||
url: string;
|
url: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
const DICEBEAR_BASE = 'https://api.dicebear.com/9.x/adventurer/svg';
|
// PNG, not SVG — React Native's <Image> can't decode SVG (Hero-Avatars rendered
|
||||||
|
// blank/transparent on Android otherwise). DiceBear serves PNG at the /png path.
|
||||||
|
const DICEBEAR_BASE = 'https://api.dicebear.com/9.x/adventurer/png';
|
||||||
|
|
||||||
export const HERO_AVATARS: HeroAvatar[] = [
|
export const HERO_AVATARS: HeroAvatar[] = [
|
||||||
{ id: 'spider', name: 'Spider', color: 'border-red-500', url: `${DICEBEAR_BASE}?seed=spiderman&backgroundColor=b71c1c` },
|
{ id: 'spider', name: 'Spider', color: 'border-red-500', url: `${DICEBEAR_BASE}?seed=spiderman&backgroundColor=b71c1c` },
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { getAvatarById, getAvatarUrl } from './avatars';
|
import { getAvatarById, getAvatarUrl } from './avatars';
|
||||||
|
|
||||||
const DICEBEAR_BASE = 'https://api.dicebear.com/9.x/adventurer/svg';
|
// PNG, not SVG — RN <Image> can't decode SVG. DiceBear serves PNG at the /png path.
|
||||||
|
const DICEBEAR_BASE = 'https://api.dicebear.com/9.x/adventurer/png';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Resolves the `profiles.avatar` field zu einer renderbaren URL.
|
* Resolves the `profiles.avatar` field zu einer renderbaren URL.
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user