Jump to content

Talk:ZIP (file format)

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

flutter build apk --release

[edit]

build/app/outputs/flutter-apk/app-release.apk 2409:40F2:103C:F4E2:C4B7:52FF:FE44:CBED (talk) 07:28, 26 May 2025 (UTC)[reply]

build/app/outputs/flutter-apk/app-release.apk

[edit]

import 'package:flutter/material.dart';

void main() { runApp(SHAHiGoldApp()); }

class SHAHiGoldApp extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( title: 'SHAHi Gold', theme: ThemeData( primarySwatch: Colors.amber, ), home: SplashScreen(), debugShowCheckedModeBanner: false, ); } }

class SplashScreen extends StatelessWidget { @override Widget build(BuildContext context) { Future.delayed(Duration(seconds: 2), () { Navigator.pushReplacement( context, MaterialPageRoute(builder: (context) => LoginScreen()), ); });

return Scaffold(
  backgroundColor: Colors.amber.shade700,
  body: Center(
    child: Text(
      'SHAHi Gold',
      style: TextStyle(fontSize: 32, color: Colors.white, fontWeight: FontWeight.bold),
    ),
  ),
);

} }

class LoginScreen extends StatelessWidget { final TextEditingController mobileController = TextEditingController();

@override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("Login")), body: Padding( padding: EdgeInsets.all(20), child: Column( children: [ TextField( controller: mobileController, keyboardType: TextInputType.phone, decoration: InputDecoration(labelText: "Enter Mobile Number"), ), SizedBox(height: 20), ElevatedButton( onPressed: () { Navigator.pushReplacement( context, MaterialPageRoute(builder: (context) => DashboardScreen()), ); }, child: Text("Login (Mock)"), ) ], ), ), ); } }

class DashboardScreen extends StatelessWidget { double goldPrice = 6534.75; // mock gold price

@override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("SHAHi Gold Dashboard")), body: Padding( padding: EdgeInsets.all(20), child: Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ Text("Live Gold Price (per gram):", style: TextStyle(fontSize: 18, fontWeight: FontWeight.bold)), SizedBox(height: 8), Text("₹$goldPrice", style: TextStyle(fontSize: 24, color: Colors.green)), SizedBox(height: 30), ElevatedButton( onPressed: () { Navigator.push( context, MaterialPageRoute(builder: () => BuyGoldScreen())); }, child: Text("Buy Gold"), ), ElevatedButton( onPressed: () { Navigator.push( context, MaterialPageRoute(builder: () => WalletScreen())); }, child: Text("My Wallet"), ) ], ), ), ); } }

class BuyGoldScreen extends StatelessWidget { final TextEditingController amountController = TextEditingController();

@override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("Buy Gold")), body: Padding( padding: EdgeInsets.all(20), child: Column( children: [ TextField( controller: amountController, keyboardType: TextInputType.number, decoration: InputDecoration(labelText: "Enter amount in ₹"), ), SizedBox(height: 20), ElevatedButton( onPressed: () { ScaffoldMessenger.of(context).showSnackBar( SnackBar(content: Text("Gold purchased (demo only)!")), ); }, child: Text("Buy Now"), ) ], ), ), ); } }

class WalletScreen extends StatelessWidget { final double goldBalance = 0.85; // mock data

@override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("My Wallet")), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Text("Your Gold Balance:", style: TextStyle(fontSize: 18)), SizedBox(height: 10), Text("$goldBalance grams", style: TextStyle(fontSize: 28, fontWeight: FontWeight.bold)), ], ), ), ); } } 2409:40F2:103C:F4E2:C4B7:52FF:FE44:CBED (talk) 07:29, 26 May 2025 (UTC)[reply]

inconsistency

[edit]

https://en.wikipedia.org/w/index.php?title=ZIP_(file_format)#Local_file_header Compressed size (or 0xffffffff for ZIP64) Uncompressed size (or 0xffffffff for ZIP64)

https://en.wikipedia.org/w/index.php?title=ZIP_(file_format)#Data_descriptor If the archive is in Zip64 format, the compressed and uncompressed size fields are 8 bytes long instead of 4 bytes long (see section 4.3.9.2). The equivalent fields in the local header (or in the Zip64 extended information extra field in the case of archives in Zip64 format) are filled with zero

Should be "are filled with 0xffffffff " for consistency (and to match spec) 72.220.110.71 (talk) 18:12, 2 June 2025 (UTC)[reply]