100% found this document useful (5 votes)
166 views62 pages

How To Build Android Apps With Kotlin A Practical Guide To Developing Testing and Publishing Your First Android Apps 2nd Edition Alex Forrester

Android

Uploaded by

ainyronken
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (5 votes)
166 views62 pages

How To Build Android Apps With Kotlin A Practical Guide To Developing Testing and Publishing Your First Android Apps 2nd Edition Alex Forrester

Android

Uploaded by

ainyronken
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 62

Download the full version of the textbook now at textbookfull.

com

How to Build Android Apps with Kotlin A


practical guide to developing testing and
publishing your first Android apps 2nd
Edition Alex Forrester
https://textbookfull.com/product/how-to-build-
android-apps-with-kotlin-a-practical-guide-to-
developing-testing-and-publishing-your-first-
android-apps-2nd-edition-alex-forrester/

Explore and download more textbook at https://textbookfull.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Android Studio Iguana Essentials Kotlin Edition Developing


Android Apps Using Android Studio 2023 2 1 and Kotlin Neil
Smyth
https://textbookfull.com/product/android-studio-iguana-essentials-
kotlin-edition-developing-android-apps-using-android-
studio-2023-2-1-and-kotlin-neil-smyth/
textbookfull.com

Android Continuous Integration: Build-Deploy-Test


Automation for Android Mobile Apps Pradeep Macharla

https://textbookfull.com/product/android-continuous-integration-build-
deploy-test-automation-for-android-mobile-apps-pradeep-macharla/

textbookfull.com

Android Studio 3 3 Development Essentials Android 9


Edition Developing Android 9 Apps Using Android Studio 3 3
Java and Android Jetpack Neil Smyth
https://textbookfull.com/product/android-studio-3-3-development-
essentials-android-9-edition-developing-android-9-apps-using-android-
studio-3-3-java-and-android-jetpack-neil-smyth/
textbookfull.com

Security Privacy and Applied Cryptography Engineering 8th


International Conference SPACE 2018 Kanpur India December
15 19 2018 Proceedings Anupam Chattopadhyay
https://textbookfull.com/product/security-privacy-and-applied-
cryptography-engineering-8th-international-conference-
space-2018-kanpur-india-december-15-19-2018-proceedings-anupam-
chattopadhyay/
textbookfull.com
Brunch Planner Delicious Brunch Recipes Everyone Should
Know! 2nd Edition Booksumo Press

https://textbookfull.com/product/brunch-planner-delicious-brunch-
recipes-everyone-should-know-2nd-edition-booksumo-press/

textbookfull.com

Differential Calculus for JEE Main and Advanced (3rd


edition) Vinay Kumar

https://textbookfull.com/product/differential-calculus-for-jee-main-
and-advanced-3rd-edition-vinay-kumar/

textbookfull.com

Changing the Church Transformations of Christian Belief


Practice and Life 1st Edition Vladimir Latinovic

https://textbookfull.com/product/changing-the-church-transformations-
of-christian-belief-practice-and-life-1st-edition-vladimir-latinovic/

textbookfull.com

Transacting as Art Design and Architecture A Non


Commercial Market 1st Edition Marsha Bradfield

https://textbookfull.com/product/transacting-as-art-design-and-
architecture-a-non-commercial-market-1st-edition-marsha-bradfield/

textbookfull.com

Drunk Japan: Law and Alcohol in Japanese Society 1st


Edition Mark D. West

https://textbookfull.com/product/drunk-japan-law-and-alcohol-in-
japanese-society-1st-edition-mark-d-west/

textbookfull.com
Earth Frequency First Edition Melissa Alvarez

https://textbookfull.com/product/earth-frequency-first-edition-
melissa-alvarez/

textbookfull.com
How to Build Android Apps
with Kotlin
Second Edition

A practical guide to developing, testing, and publishing


your first Android apps

Alex Forrester
Eran Boudjnah
Alexandru Dumbravan
Jomar Tigcal

BIRMINGHAM—MUMBAI
How to Build Android Apps with Kotlin
Second Edition
Copyright © 2023 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted
in any form or by any means, without the prior written permission of the publisher, except in the case
of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information
presented. However, the information contained in this book is sold without warranty, either express
or implied. Neither the authors, nor Packt Publishing or its dealers and distributors, will be held liable
for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and
products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot
guarantee the accuracy of this information.

Group Product Manager: Rohit Rajkumar


Publishing Product Manager: Nitin Nainani
Content Development Editor: Abhishek Jadhav
Technical Editor: Simran Ali
Copy Editor: Safis Editing
Project Coordinator: Aishwarya Mohan
Proofreader: Safis Editing
Indexer: Manju Arasan
Production Designer: Joshua Misquitta
Marketing Coordinator: Nivedita Pandey

First published: February 2021


Second edition: May 2023
Production reference: 1210423

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.

ISBN 978-1-83763-493-4
www.packtpub.com
Dedicated to my wife Angela and daughter Catherine for all their love and support.

– Alex Forrester

To my endlessly supportive wife, Lea, for always being there for support. To my parents, Amos and
Tirtsa, for spending some of their best years teaching and encouraging me. I could not have asked for
better people in my life, so thank you all.
– Eran Boudjnah

Dedicated to Niki for her constant support.

– Alexandru Dumbravan

To my loving wife, Celine, for her support and encouragement. To my parents for all their sacrifices
and for raising me well.

– Jomar Tigcal
Contributors

About the authors


Alex Forrester is an experienced software developer with more than 20 years of experience in mobile
and web development and content management systems. He has worked with Android since 2010,
creating flagship apps for blue-chip companies across a broad range of industries at Sky, The Automobile
Association, HSBC, Discovery Channel, and O2. Alex lives in Hertfordshire with his wife and daughter.
When he’s not developing, he likes rugby and running in the Chiltern hills.

Eran Boudjnah is a developer with over 20 years of experience in developing desktop applications,
websites, interactive attractions, and mobile applications. He has worked with Android since 2011,
developing apps and leading mobile teams for a wide range of clients, from start-ups (JustEat and
Plume Design) to large-scale companies (Sky and HSBC) and conglomerates. He is passionate about
board games (with a modest collection of a few hundred games) and has a Transformers collection
he’s quite proud of. Eran lives in Brentwood, England, with Lea, his wife.

Alexandru Dumbravan is an Android developer with more than 10 years of experience building
Android apps, focusing on fintech applications since 2016 when he moved to London. In his spare
time, Alex enjoys video games, movies, and the occasional gym visit.

Jomar Tigcal is an Android developer with over 14 years of experience in mobile and software
development. He has worked on various stages of Android app development for small start-ups and
large companies since 2012. Jomar has also given talks and conducted training and workshops on
Android. In his free time, he likes running and reading. He lives in Vancouver, BC, Canada, with his
wife Celine.
About the reviewers
Ed Holloway-George is an Android developer and Google Developer Expert originally from Oxford,
England, but currently living in Nottingham. An Android developer for just over 10 years, Ed now
works for ASOS as a lead developer having previously worked on well-known applications such as
National Trust, My Oxfam, Snoop, Carling Tap, and more.
In his spare time, Ed can be found speaking at conferences, writing blog posts, and sharing pictures
of his dog.

Guruprasad Bagade is a senior developer who has led teams and has over a decade of experience
in mobile and software development. He has witnessed changes in Android development from Java
to Kotlin with the most recent framework libraries. He primarily worked in the banking domain for
Barclays and JP Morgan clients. He has hired everyone from freshers to experienced developers for
organizations and helped set up teams while also publishing knowledge articles on Android on the
internal portals of the various organizations where he has worked.
He has published technical research papers at the Institute of Electrical and Electronics Engineers
(IEEE) and international and national conferences. He also contributes to open source projects. In
his spare time, he keeps himself up to date with the latest technologies.
Table of Contents

Prefacexv

Part 1: Android Foundation


1
Creating Your First App 3
Technical requirements 4 The project-level build.gradle file 22
Creating an Android project with The app-level build.gradle file 23
Android Studio 4 Exercise 1.04 – exploring how Material
Design is used to theme an app 27
Exercise 1.01 – creating an Android Studio
project for your app 4 Android application structure 30
Setting up a virtual device and Exercise 1.05 – adding interactive UI
running your app 8 elements to display a bespoke greeting to
the user 38
Exercise 1.02 – setting up a virtual device and
Accessing Views in layout files 46
running your app on it 9
Further input validation 46
The Android manifest 16 Activity 1.01 – producing an app to create
Exercise 1.03 – configuring the Android RGB colors 47
manifest internet permission 18
Summary49
Using Gradle to build, configure, and
manage app dependencies 22

2
Building User Screen Flows 51
Technical requirements 51 Exercise 2.01 – logging the Activity
Callbacks55
The Activity lifecycle 52
viii Table of Contents

Saving and restoring the Activity Exercise 2.05 – retrieving a result from
state63 an Activity 84
Exercise 2.02 – saving and restoring the Intents, Tasks, and Launch
state in layouts 63
Modes95
Exercise 2.03 – saving and restoring the
Exercise 2.06 – setting the Launch Mode
state with Callbacks 71
of an Activity 96
Activity interaction with Intents 77 Activity 2.01 – creating a login form 101
Exercise 2.04 – an introduction to Intents 78
Summary102

3
Developing the UI with Fragments 103
Technical requirements 104 Exercise 3.02 – adding fragments statically to
an activity 117
The fragment lifecycle 104
onAttach105 Static fragments and dual-pane
onCreate106 layouts127
onCreateView106 Exercise 3.03 – dual-pane layouts with static
onViewCreated106 fragments128
onActivityCreated106
Dynamic fragments 145
onStart106
Exercise 3.04 – adding fragments dynamically
onResume106
to an activity 146
onPause107
onStop107 Jetpack Navigation 150
onDestroyView107 Exercise 3.05 – adding a Jetpack navigation
onDestroy107 graph151
onDetach107 Activity 3.01 – creating a quiz on the planets 156
Exercise 3.01 – adding a basic fragment and Summary160
the fragment lifecycle 108

4
Building App Navigation 161
Technical requirements 162 Exercise 4.01 – creating an App with a
navigation drawer 164
Navigation overview 162
Navigation drawer 162 Bottom navigation 181
Table of Contents ix

Exercise 4.02 – adding bottom navigation to Activity 4.01 – building primary and
your app 181 secondary app navigation 198

Tabbed navigation 191 Summary199


Exercise 4.03 – using tabs for app
navigation191

Part 2: Displaying Network Calls


5
Essential Libraries: Retrofit, Moshi, and Glide 203
Technical requirements 203 Loading images from a remote
Introducing REST, API, JSON, and URL218
XML203 Exercise 5.03 – loading the image from the
obtained URL 221
Fetching data from a network
endpoint205 Activity 5.01 – displaying the current
weather228
Exercise 5.01 – reading data from an API 208
Summary229
Parsing a JSON response 213
Exercise 5.02 – extracting the image URL
from the API response 215

6
Adding and Interacting with RecyclerView 231
Technical requirements 232 Exercise 6.03 – responding to clicks 253
Adding RecyclerView to our Supporting different Item types 256
layout232 Exercise 6.04 – adding titles to
Exercise 6.01 – adding an empty RecyclerView260
RecyclerView to your main activity 233
Swiping to remove Items 266
Populating RecyclerView 235 Exercise 6.05 – adding swipe to delete
Exercise 6.02 – populating your functionality269
RecyclerView243
Adding items interactively 272
Responding to clicks in Exercise 6.06 – implementing an Add A Cat
RecyclerView251 button274
Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
x Table of Contents

Activity 6.01 – managing a list of Items 277 Summary279

7
Android Permissions and Google Maps 281
Technical requirements 282 Map clicks and custom markers 299
Requesting permission from the Exercise 7.03 – adding a custom marker
user282 where the map was clicked 303
Exercise 7.01 – requesting the location Activity 7.01 – creating an app to find the
permission286 location of a parked car 308

Showing a map of the user’s Summary309


location292
Exercise 7.02 – obtaining the user’s current
location295

8
Services, WorkManager, and Notifications 311
Technical requirements 312 Exercise 8.02 – tracking your SCA’s
work with a Foreground Service 326
Starting a background task using
WorkManager312 Activity 8.01 – reminder to
drink water 334
Exercise 8.01 – executing background work
with the WorkManager class 316 Summary335
Background operations noticeable to
the user – using a Foreground
Service321

9
Building User Interfaces Using Jetpack Compose 337
Technical requirements 337 Handling user actions 345
What is Jetpack Compose? 337 Exercise 9.02 – handling user inputs 347
Exercise 9.01 – first Compose screen 342 Theming in Compose 350
Table of Contents xi

Exercise 9.03 – applying themes 357 Activity 9.01 – first Compose app 366

Adding Compose to existing Summary367


projects363

Part 3: Testing and Code Structure


10
Unit Tests and Integration Tests with JUnit, Mockito,
and Espresso 371
Technical requirements 372 Exercise 10.02 – double integration 403
Types of testing 372 UI tests 412
JUnit374 Testing in Jetpack Compose 417
Android Studio testing tips 382 Exercise 10.03 – random waiting times 420
Mockito386 TDD431
Exercise 10.01 – testing the sum of Exercise 10.04 – using TDD to calculate the
numbers392 sum of numbers 433
Integration tests 396 Activity 10.01 – developing with TDD 436

Robolectric396 Summary438
Espresso401

11
Android Architecture Components 441
Technical requirements 442 Room463
Android components Entities464
background442 DAO467
ViewModel443 Setting up the database 469
Exercise 11.01 – shared ViewModel 445 Third-party frameworks 473
Exercise 11.03 – making a little room 475
Data streams 453 Activity 11.01 – a shopping notes app 480
LiveData454
Summary482
Additional data streams 461
xii Table of Contents

12
Persisting Data 483
Technical requirements 483 FileProvider499
Preferences and DataStore 484 The Storage Access Framework (SAF) 500
Asset files 500
SharedPreferences484
Exercise 12.03 – copying files 501
Exercise 12.01 – wrapping
SharedPreferences485 Scoped storage 508
DataStore489 Camera and media storage 509
Exercise 12.02 – Preference DataStore 491 Exercise 12.04 – taking photos 511
Files495 Activity 12.01 – dog downloader 518
Internal storage 496 Summary521
External storage 498

13
Dependency Injection with Dagger, Hilt, and Koin 523
Technical requirements 523 Scopes536
The necessity of dependency Subcomponents537
injection524 Exercise 13.02 – Dagger injection 538

Manual DI 524 Hilt543


Exercise 13.01 – manual injection 527 Exercise 13.03 – Hilt injection 547

Dagger 2 531 Koin550


Consumers532 Exercise 13.04 – Koin injection 553
Providers533 Activity 13.01 – injected repositories 556
Connectors534
Summary557
Qualifiers535
Table of Contents xiii

Part 4: Polishing and Publishing an App


14
Coroutines and Flow 561
Technical requirements 562 Using Flow on Android 573
Using Coroutines on Android 562 Collecting Flows on Android 574
Creating coroutines 563 Creating Flows with Flow Builders 576
Adding coroutines to your project 564 Using operators with Flows 577
Exercise 14.01 – using coroutines in an Exercise 14.03 – using Flow in an Android
Android app 565 application578
Activity 14.01 – creating a TV Guide app 581
Transforming LiveData 570
Exercise 14.02 – LiveData transformations 571 Summary584

15
Architecture Patterns 585
Technical requirements 586 Exercise 15.02 – using Repository with Room
in an Android project 595
Getting started with MVVM 586
Binding data on Android with data Using WorkManager 598
binding588 Exercise 15.03 – adding WorkManager to an
Exercise 15.01– using data binding in an Android Project 598
Android project 590 Activity 15.01 – revisiting the TV Guide app 601
Using Retrofit and Moshi 593 Summary603
Implementing the Repository pattern 593

16
Animations and Transitions with CoordinatorLayout
and MotionLayout 605
Technical requirements 606 Adding activity transitions through XML 606
Activity transitions 606 Adding activity transitions through code 607
xiv Table of Contents

Starting an activity with an activity Adding MotionLayout 616


transition608 Creating animations with
Exercise 16.01 – creating activity transitions MotionLayout617
in an app 608 Exercise 16.03 – adding animations with
Adding a shared element transition 610 MotionLayout618
Starting an activity with the shared element The Motion Editor 620
transition611 Debugging MotionLayout 625
Exercise 16.02 – creating the shared element Modifying the MotionLayout path 627
transition612 Exercise 16.04 – modifying the animation
path with keyframes 629
Animations with
CoordinatorLayout614 Activity 16.01 – Password Generator 636

Animations with MotionLayout 616 Summary638

17
Launching Your App on Google Play 639
Preparing your apps for release 640 Uploading an app to Google
Versioning apps 640 Play653
Creating a keystore 641 Creating a store listing 653
Exercise 17.01 – creating a keystore in Preparing the release 654
Android Studio 641 Rolling out a release 656
Storing the keystore and passwords 644
Managing app releases 657
Signing your apps for release 646
Release tracks 657
Exercise 17.02 – creating a signed APK 646
Staged rollouts 658
Android app bundle 649
Managed publishing 660
Exercise 17.03 – creating a signed app bundle 650
Activity 17.01 – publishing an app 662
App signing by Google Play 652

Creating a developer account 652 Summary663

Index665

Other Books You May Enjoy 674


Preface
Android has ruled the app market for the past decade, and developers are increasingly looking to
start building their own Android apps. How to Build Android Apps with Kotlin starts with the building
blocks of Android development, teaching you how to use Android Studio, the integrated development
environment (IDE) for Android, with the Kotlin programming language for app development.
Then, you’ll learn how to create apps and run them on virtual devices using guided exercises. You’ll
cover the fundamentals of Android development, from structuring an app to building out the UI with
activities, fragments, and various navigation patterns. Progressing through the chapters, you’ll delve
into Android’s RecyclerView to make the most of displaying lists of data and become comfortable
with fetching data from a web service and handling images.
You’ll then learn about mapping, location services, and the permissions model before working with
notifications and how to persist data. Next, you’ll build user interfaces using Jetpack Compose. Moving
on, you’ll get to grips with testing, covering the full spectrum of the test pyramid. You’ll also learn
how Android Architecture Components (AAC) is used to cleanly structure your code and explore
various architecture patterns and the benefits of dependency injection.
Coroutines and the Flow API are covered for asynchronous programming. The focus then returns to
the UI, demonstrating how to add motion and transitions when users interact with your apps. Toward
the end, you’ll build an interesting app to retrieve and display popular movies from a movie database,
and then see how to publish your apps on Google Play.
By the end of this book, you’ll have the skills and confidence needed to build fully-fledged Android
apps using Kotlin.

Who this book is for


If you want to build your own Android apps using Kotlin but are unsure of how to begin, then this
book is for you. A basic understanding of the Kotlin programming language will help you grasp the
topics covered in this book more quickly.

What this book covers


Chapter 1, Creating Your First App, shows how to use Android Studio to build your first Android app.
Here, you will create an Android Studio project, understand what it’s made up of, and explore the
tools necessary for building and deploying an app on a virtual device. You will also learn about the
structure of an Android app.
xvi Preface

Chapter 2, Building User Screen Flows, dives into the Android ecosystem and the building blocks
of an Android application. Concepts such as activities and their lifecycle, intents, and tasks will be
introduced, as well as restoring the state and passing data between screens or activities.
Chapter 3, Developing the UI with Fragments, teaches you the fundamentals of using fragments for
the user interface of an Android application. You will learn how to use fragments in multiple ways to
build application layouts for phones and tablets, including using the Jetpack Navigation component.
Chapter 4, Building App Navigation, goes through the different types of navigation in an application.
You will learn about navigation drawers with sliding layouts, bottom navigation, and tabbed navigation.
Chapter 5, Essential Libraries: Retrofit, Moshi, and Glide, gives you an insight into how to build apps
that fetch data from a remote data source with the use of the Retrofit library and the Moshi library
to convert data into Kotlin objects. You will also learn about the Glide library, which loads remote
images into your app.
Chapter 6, Adding and Interacting with RecyclerView, introduces the concept of building lists and
displaying them with the help of the RecyclerView widget.
Chapter 7, Android Permissions and Google Maps, presents the concept of permissions and how to
request them from the user in order for your app to execute specific tasks, as well as introducing you
to the Maps API.
Chapter 8, Services, WorkManager, and Notifications, details the concept of background work in an
Android app and how you can have your app execute certain tasks in a way that is invisible to the
user, as well as covering how to show a notification of this work.
Chapter 9, Building User Interfaces Using Jetpack Compose, shows how Jetpack Compose works, how
to apply styles and themes, and how to use Jetpack Compose in projects started with layout files.
Chapter 10, Unit Tests and Integration Tests with JUnit, Mockito, and Espresso, teaches you about the
different types of tests for an Android application, what frameworks are used for each type of test,
and the concept of test-driven development.
Chapter 11, Android Architecture Components, provides an insight into components from the Android
Jetpack libraries, such as ViewModel, which will help separate the business logic from the user interface
code. We will then look at how we can use observable data streams such as LiveData to deliver data
to the user interface. Finally, we will look at the Room library to analyze how we can persist data.
Chapter 12, Persisting Data, shows you the various ways to store data on a device, from SharedPreferences
to files. The Repository concept will also be introduced, giving you an idea of how to structure your
app in different layers.
Chapter 13, Dependency Injection with Dagger, Hilt, and Koin, explains the concept of dependency
injection and the benefits it provides to an application. Frameworks such as Dagger, Hilt, and Koin
are introduced to help you manage your dependencies.
Preface xvii

Chapter 14, Coroutines and Flow, introduces you to doing background operations and data manipulations
with coroutines and Flow. You’ll also learn about manipulating and displaying data using Flow operators
and LiveData transformation.
Chapter 15, Architecture Patterns, explains the architecture patterns you can use to structure your
Android projects to separate them into different components with distinct functionality. These make
it easier for you to develop, test, and maintain your code.
Chapter 16, Animations and Transitions with CoordinatorLayout and MotionLayout, discusses how to
enhance your apps with animations and transitions with CoordinatorLayout and MotionLayout.
Chapter 17, Launching Your App on Google Play, concludes this book by showing you how to publish
your apps on Google Play: from preparing a release to creating a Google Play Developer account,
and finally launching your app.

To get the most out of this book


Each great journey begins with a humble step. Before we can do awesome things in Android, we need
to be prepared with a productive environment. In this section, we will see how to do that.

Minimum hardware requirements


For an optimal learning experience, we recommend the following hardware configuration:

• Processor: Intel Core i5 or equivalent or higher


• Memory: 8 GB RAM or more
• Storage: 8 GB available space minimum

Software requirements
You’ll also need the following software installed in advance:

• OS: 64-bit Windows 8/10/11, macOS, or 64-bit Linux


• Android Studio Electric Eel or higher

Installation and setup


Before you start this book, you will need to install Android Studio Electric Eel (or higher), which is the
software you will be using throughout the chapters. You can download Android Studio from https://
developer.android.com/studio.
On macOS, launch the DMG file and drag and drop Android Studio into the Applications folder.
Once this is done, open Android Studio. On Windows, launch the EXE file. If you’re using Linux,
xviii Preface

unpack the ZIP file into your preferred location. Open your Terminal and navigate to the android-
studio/bin/ directory and execute studio.sh.
Next, the Data Sharing dialog will pop up; click either the Send usage statistics to Google button or
the Don’t send button to disable sending anonymous usage data to Google:

The Data Sharing dialog

In the Welcome dialog, click the Next button to start the setup:

The Welcome dialog


Preface xix

In the Install Type dialog, select Standard to install the recommended settings. Then, click the
Next button:

The Install Type dialog


Visit https://textbookfull.com
now to explore a rich
collection of eBooks, textbook
and enjoy exciting offers!
xx Preface

In the Select UI Theme dialog, choose your preferred IDE theme—either Light or Darcula (dark
theme)—then click the Next button:

The Select UI Theme dialog

In the Verify Settings dialog, review your settings and then click the Finish button. The setup wizard
downloads and installs additional components, including the Android SDK:
Preface xxi

The Verify Settings dialog

Once the download finishes, you can click the Finish button. You are now ready to create your
Android project.
If you are using the digital version of this book, we advise you to type the code yourself or access
the code from the book’s GitHub repository (a link is available in the next section). Doing so will
help you avoid any potential errors related to the copying and pasting of code.

Download the example code files


You can download the example code files for this book from GitHub at https://github.com/
PacktPublishing/How-to-Build-Android-Apps-with-Kotlin-Second-Edition.
If there’s an update to the code, it will be updated in the GitHub repository.
We also have other code bundles from our rich catalog of books and videos available at https://
github.com/PacktPublishing/. Check them out!
xxii Preface

Download the color images


We also provide a PDF file that has color images of the screenshots and diagrams used in this book.
You can download it here: https://packt.link/vnOCn.

Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in text, database table names, folder names, filenames, file
extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: “You can
find it in the main project window under MyApplication | app | src | main.”
A block of code is set as follows:

<resources>
    <string name="app_name">My Application</string>
</resources>

When we wish to draw your attention to a particular part of a code block, the relevant lines or items
are set in bold:

<?xml version="1.0" encoding="utf-8"?>


<resources>
    <string name="app_name">My Application</string>
    <string name="first_name_text">First name:</string>
    <string name="last_name_text">Last name:</string>
</resources>

Bold: Indicates a new term, an important word, or words that you see onscreen. For instance, words
in menus or dialog boxes appear in bold. Here is an example: “Click Finish and your virtual device
will be created.”

Tips or important notes


Appear like this.
Preface xxiii

Get in touch
Feedback from our readers is always welcome.
General feedback: If you have questions about any aspect of this book, email us at customercare@
packtpub.com and mention the book title in the subject of your message.
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen.
If you have found a mistake in this book, we would be grateful if you would report this to us. Please
visit www.packtpub.com/support/errata and fill in the form.
Piracy: If you come across any illegal copies of our works in any form on the internet, we would
be grateful if you would provide us with the location address or website name. Please contact us at
[email protected] with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in and you
are interested in either writing or contributing to a book, please visit authors.packtpub.com.

Share your thoughts


Once you’ve read How to Build Android Apps with Kotlin, Second Edition, we’d love to hear
your thoughts! Please select https://www.amazon.in/review/create-review/
error?asin=1837634939 for this book and share your feedback.
Your review is important to us and the tech community and will help us make sure we’re delivering
excellent quality content.
xxiv Preface

Download a free PDF copy of this book


Thanks for purchasing this book!
Do you like to read on the go but are unable to carry your print books everywhere?
Is your eBook purchase not compatible with the device of your choice?
Don’t worry, now with every Packt book you get a DRM-free PDF version of that book at no cost.
Read anywhere, any place, on any device. Search, copy, and paste code from your favorite technical
books directly into your application.
The perks don’t stop there, you can get exclusive access to discounts, newsletters, and great free content
in your inbox daily
Follow these simple steps to get the benefits:

1. Scan the QR code or visit the link below

https://packt.link/free-ebook/9781837634934

2. Submit your proof of purchase


3. That’s it! We’ll send your free PDF and other benefits to your email directly
Random documents with unrelated
content Scribd suggests to you:
The Project Gutenberg eBook of A ki örökké

bujdosott és egyéb elbeszélések


This ebook is for the use of anyone anywhere in the United States
and most other parts of the world at no cost and with almost no
restrictions whatsoever. You may copy it, give it away or re-use it
under the terms of the Project Gutenberg License included with this
ebook or online at www.gutenberg.org. If you are not located in the
United States, you will have to check the laws of the country where
you are located before using this eBook.

Title: A ki örökké bujdosott és egyéb elbeszélések

Author: Károly Eötvös

Release date: August 16, 2020 [eBook #62938]

Language: Hungarian

Credits: Produced by Albert László from page images generously


made
available by the Google Books Library Project

*** START OF THE PROJECT GUTENBERG EBOOK A KI ÖRÖKKÉ


BUJDOSOTT ÉS EGYÉB ELBESZÉLÉSEK ***
Megjegyzések:

A tartalomjegyzék a 317. oldalon található.


Az eredeti képek elérhetők innen: http://books.google.com/books?
id=Zt1kAAAAMAAJ.
Facebook oldalunk: http://www.facebook.com/PGHungarianTeam.
Eötvös Károly Munkái
iii. kötet

A KI ÖRÖKKÉ BUJDOSOTT
ÉS EGYÉB ELBESZÉLÉSEK

Eötvös Károly Munkái


III

A KI ÖRÖKKÉ BUJDOSOTT
ÉS EGYÉB ELBESZÉLÉSEK

BUDAPEST MDCCCCI
VIII., ÜLLŐI-ÚT 18. SZÁM.

RÉVAI TESTVÉREK
IRODALMI INTÉZET R.-T.

Eötvös Károly
A KI ÖRÖKKÉ BUJDOSOTT
ÉS EGYÉB ELBESZÉLÉSEK

BUDAPEST MDCCCCI
VIII., ÜLLŐI-ÚT 18. SZÁM.

RÉVAI TESTVÉREK
IRODALMI INTÉZET R.-T.

AZ ÖSSZES JOGOK FENTARTÁSÁVAL

Révai és Salamon könyvnyomdája, Budapest, VIII., Üllői-út 18.


A KI ÖRÖKKÉ BUJDOSOTT.
MAGYARORSZÁGBAN.
(Menekülés a Száván keresztül. – Két bujdosó nyomtalanul elvesz. – Henri
a vármegyékben. – A veperdi biró. – A lakompaki uriszék. – Kik élnek
még, a kik látták a bujdosót?)

Az 1843-dik évi szeptember hónak egyik napján – meleg,


csaknem nyári napon – három koldus ballagott a gradasáczi úton
Kusetó felé Boszniában.
Mindhárom öreg, rokkant férfiu. Bajuszuk és szakáluk ősz, arczuk
tele redővel, termetük előrehajlott, – éhségnek, szomjnak,
fáradtságnak, éveknek s tán sok szenvedésnek súlya alatt
meggörnyedve. Ruhájuk szenny és foszlány, lábbelijük nincs, törökös
nadrágjuk egykor kék, övük egykor sárga s mellényük egykor fehér
lehetett. Fejük piszkos kendővel turbán módjára van bekötve.
Fegyverük nincs, kezükben bot.
Franczia nyelven beszélnek maguk között, keverve szláv és török
szavakkal. Ha valamely török jön velük szemközt: azt török nyelven s
keleti taglejtéssel üdvözlik. Különben szótlanok igen gyakran egymás
közt is.
A nap nyugvóra szállt, mire beérnek Kusetóba. Itt gondosan
kérdezősködnek a hánok után, betekintenek háromba is s végre
megtelepednek a harmadikban. Ez a Szávára néz s egy utczának
vagy inkább marhacsapásnak közepén fekszik. Roskatag faépület,
rozzant falakkal és tetővel. Mellette nyitott félszer falábakon,
foszladozó nád és gallytető alatt. Itt telepednek le mind a hárman.
Leülnek a porba és szemétbe.
Van ott egy pár ökrösszekér is, szegény bosznyákok fogata.
Néhány bosznyák is ott guggol és hentereg és eteti ökreit s
dohányoz és beszélget valamennyi. A három koldus csakhamar
megérti a beszélgetésből, hogy a bosznyákok valamely távoli faluból
katonaság számára szállítottak valamit Kusetóba, még pedig
kényszerfuvarképen.
A koldusok közül egyik feláll, odamegy a bosznyákok közé s
romlott szerb nyelven kérdi őket, miként lehetne átmenni a Száván?
E kérdésre egyik sem tud felelni.
A koldus erre a hánba megy s visszajövén, társainak azt mondja,
hogy a Száván nem lehet átmenni, a révet katonák kezelik, mert a
bosznyákok szökdösnek, nekik pedig se utlevelük, se pénzük az őrök
megvesztegetésére.
Két társa nagyot sóhajt, de fektéből nem kel föl egyik is. Sőt a
harmadik is melléjük fekszik.
Éjfél felé, mikor a bosznyákok s hánbeliek már mind mélyen
aludtak s mikor a három koldus megette az övéből elővett
kukoriczapogácsát, felállt mind a három, zajtalanul lement a folyó
partjára s a folyó mentében vigyázva ballagott lefelé.
Tovább ballagtak már egy óránál s a várost messzire elhagyták,
midőn a folyó nádas partján egy helyütt egy csónakot kikötve s a
csónak előtt a bozótot letaposva találták.
Egyik fölment a partra, körülnézett, nem látott senkit, nem vett
észre semmi gyanusat s aztán visszament társaihoz, intett nekik,
mindhárman beleültek a csónakba, eloldozták a kötelet s befelé
iparkodtak a tiszta vízre.
Zaj nélkül nem tehették. A víz locscsanásának hangjára fölébredt
valaki a parton s erős, durva hangon törökül is, szlávul is kiabált a
menekvők után, kiket nyilván tolvajoknak tartott.
A zajra három lovas Zapti ugratott oda valahonnan s midőn a
fényes holdvilágnál a menekvőket a bozóton belül meglátták, mind a
három a menekvőkre lövöldözött.
Ezek siettek a bozót árnyékába húzódni, azonban sikertelenül,
mert a víz lefelé sodorta csónakjukat, a bozót pedig nemsokára
egészen megszünt.
A veszedelem így vagy amúgy bizonyos volt. Az egyik menekvő,
midőn a bozótot eltünni látta, egész határozottsággal mondá
társainak: »Evezzünk a víz közepére«.
Megkísértették. A golyók ujra mellettük fütyöltek el. Kétségtelen
volt, hogy mielőtt a tulsó partra átjuthatnának, mindannyian le
lesznek lövöldözve. Gyorsan kellett határozniok.
Néhány szót szóltak egymás között s azzal mind a három kiugrott
a csónakból a vízbe. Az első belekapaszkodott a csónak kötelébe, a
második megkapta az elsőnek, a harmadik pedig a másodiknak
lábát. Így ringatta őket a folyó lefelé, a csónak mind a hármat
megmentette az elmerüléstől. Még néhányat lőttek utánuk, de
bizonytalanba, mert csak fejük állván ki a vízből, többé czéltáblául
nem szolgálhattak a homály és távolság miatt.
Egyszer az, ki a csónak kötelét fogta, érzé, hogy lábát
eleresztette társa. Visszanézett s társait bukdácsolni látta. Kiáltott
nekik, de azok nem feleltek. Észrevette azonban, hogy a vízszinen a
messzeségből egy csónak sebesen közelit felé. Ő is elereszté tehát a
kötelet s egész erővel sietett kifelé úszni a tulsó partra. Szerencséje
volt ez ötlet, mert az üldöző csak a csónakot tartván szeme előtt,
mellette észrevétlenül evezett el. Végre utolsó erejének
megfeszítésével partot ért.
Kevés pihenés után a partnak vizes fövenyén felült, mert a
felálláshoz nem volt ereje. Merőn nézett széjjel s kereste társait.
Midőn már az üldöző csónak elmerült szemei elől, egész erővel
kiáltá:
– Jean, Jean, Charles, Charles!
Hangja gyönge volt és alig hallatszott száz lépésnyire, mégis
sokáig kiabált. De eredménytelenül. Társai nyilván a vízben lelték
halálukat. Azonban még nem mondott le minden reményről.
Nagy nehezen felállt. Felvánszorgott a partra. Itt már törökök és
bosznyákok ellen mentve érezte magát. A parton kaszáló volt s apró
petrenczékben feküdt a széna. Egy petrenczében lyukat vájt s vizes
rongyaival és didergő tagjaival oda bujt el. Legalább meleget talált
ott.
Ismét kiment a partra s ismét kiáltozta franczia nyelven társait.
Hiában volt. Az öreg ember könyei előtörtek.
– Istenem, – sóhajtá – harmincz év óta üldöztél, de legalább
megvoltak társaim, most már azok sincsenek.
Sírt és hangosan fuldokolva zokogott.
Ujra visszament a szénanyalábhoz. Hajnalodni kezdett, a hajnali
szellő és hidegség átjárta tagjait. Elbujt a széna közé. A kimerültség
álmot hozott szemeire. Álma hosszú volt s dél lett, mire fölébredt. A
nap már melegen sütött, a hajnali hidegségnek nyoma sem volt s
rongyai teljesen meg voltak száradva.
Erdős, dombos vidék feküdt a folyam parton. Fölment egy domb
tetejére s messze délnyugatnak túl a Száván látta Kusetó karcsu
minarettjeit. Ez volt tájékozódásának egyetlen biztos pontja.
Különben egyáltalán nem tudta, hova vetődött.
Arczán mély gond és szomoruság váltakozott. Körülnézdelvén a
tájat, lement a folyó partjára. Lábnyomairól megtalálta a helyet, hol
kiúszott és kigázolt. Innen a folyam partján fölfelé ballagott lassan,
meg-megállva s a két part fáit és bozótjait nézegetve. Azt a
távolságot akarta megmérni, a mennyire őt a víz lesodorta, míg
partot érhetett. És azt a helyet akarta megtalálni, hol két társa a
vízben tőle elszakadt.
Egy helyütt sokáig álldogált, andalgó szemeit vissza-vissza
vezetvén a folyó bizonyos helyére. Valószinüleg itt vált el társaitól.
Innen lefelé indult, mindenütt a part mentében, ha megtalálná
társait vagy csak nyomukat is. Semmi nyomra sem akadt. Tovább
ment egy mérföldnél, vizsgálódott szüntelen, de eredménytelenül.
A nap hanyatlani kezdett. Éhséget érzett és kimerültséget. Ott
hagyta a partot, feljött a dombokra, szekércsapásokat talált s
emberek után keresgélt.
Emberrel nem találkozott. Sem kutyaugatást, sem harangszót
nem hallott. Nyilván messze kellett lennie lakott helytől. De
szilvásokat talált a dombok oldalán és völgyeiben. Imitt-amott
néhány félvad és félszelíd szőlőtőt. A szilva is, a szőlő is érőfélben
volt már s a menekvő koldus gyümölcscsel verte el éhét.
Éjjeli tanyája ismét széna petrencze volt. Másnap kora reggel
fölébredett s nem habozva többé, egy szekércsapás nyomán ment
oda, hova az vezette. Rég elmult dél, mire egy kisded szegény faluba
érhetett a Száva partján. Kérdésére a falut Samácznak nevezték.
Itt tudta meg bizonyosan, hogy most már kívül van
Törökországon. Mikor azt kérdezte: micsoda országban van, azt
felelték: ez a Bródi Regiment. Ilyen országnak sohasem hallotta
hírét, de megnyugodott benne. Szegény határőrök felvilágositották,
hogy tőlük messze van Horvátország, azon tul Magyarország, azon
tul Bécs, ott lakik a császár.
Bizonyos volt, hogy a koldus franczia, mert anyanyelve franczia
volt; mind a török, mind a szláv nyelvet csak törte, sőt németül is
keveset tudott. Annál csodálatosabb volt, hogy miként keveredhetett
e vidékbe egy franczia s miként bámulhatott ő, midőn előtte
Horvátországról és Magyarországról beszéltek. Világosan látszott
arczán, hogy a két országnak most hallotta hírét először. De a
jámbor határőr nem kérdezte az ő kilétét, mit is kérdezősködött
volna tűvel-hegygyel oly nyomorult koldus után.
De a koldus, mikor Bécset említették előtte, szemfüllé vált.
Kérdezte, merre juthatna ő legközelebb Bécsbe. Ezt nem tudták neki
megmondani, hanem utasitották, kérdezze meg a kapitánytól, itt és
itt van, az majd megmondja. A koldusnak azonban nem volt kedve
elmenni a kapitányhoz.
E helyett azt kérdezte, hogy a Szávának hol van vége s mibe
szakad. Mondták neki, hogy annak vége nagyon messze van s hogy
az a Dunába szakad.
– Duna!
E szó fölött ujra sokáig gondolkodott a koldus.
– Az a Duna, – kérdezé – mely Németországban folyik?
Erre megint nem tudtak felelni, megint a kapitányhoz utasították.
Ujra gondolkodott. Homlokát ránczolá, szemöldeit összevoná,
mintha emlékező tehetségét akarta volna megerőltetni. Végre
megnyugodni látszott abban a gondolatban, hogy bizonyosan ez a
Duna az, mely Németországon folyik keresztül.
Azt kérdezé most: merre érhetne ő leghamarább a Dunához?
Utasították Vinkovcze felé, megmutatták az odavezető útat s
megoktatták, hogy ott miként kérdezze a tovább vezető útat.
Egyuttal adtak neki gyümölcsöt kukoriczakenyeret s éjjeli szállást.
Másnap elindult Vinkovcze felé. Gyalog, mezítláb, rongyosan,
bottal kezében, fáradtan ballagott napról-napra. Senki utját nem
állotta, senki rossz szóval nem bántotta, senki tőle utlevelet,
igazolványt nem kért, sehol vele semmit nem fizettettek; igaz, hogy
pénze nem is lett volna rá. Kéregetett, mint a valóságos koldus s
gyümölcscsel, kenyérrel, ételmaradékkal, néhol egy-egy krajczárral
ellátták könyörületesen.
Vinkovczén Vukovár felé utasitották. Vukovárról betévedezett
Baranya vármegyébe. Már egy hétig járt Baranyában faluról-falura,
mikor megtudta, hogy Magyarországban van s mikor már sem a
franczia, sem a török, sem a szláv nyelvnek nem vette semmi
hasznát. Előszedte tehát töredezett német nyelvbeli tudományát s
ezzel tengődött napról-napra.
A következő évet Tolna vármegyében s többnyire Szegzárdon
töltötte. Itt-ott szolgálatba is állott több-kevesebb ideig, hogy
magának tisztességes ruhát szerezhessen. Lassankint néhány szót
beszélni magyarul is megtanult.
Egykor egy uraságnál, kit ő Derrynek nevezett, ki azonban
valószinüleg Dőry volt, akarata ellenére két hónapig tartózkodott,
miután nem eresztették el, noha semmi dolgot nem bíztak rá, hanem
csak etették, itatták, mintha meg akarták volna hízlalni. Minden
kötelessége abból állott, hogy az uraságokat az ő török élményeivel
mulattatta, a melyekből azonban el nem hittek egy szót sem. Egy
helyütt a barátok is egy hétig tartogatták a zárdában.
1845-ben Fehér- és Veszprém vármegyékben utazgatott. Pápán
gr. Eszterházy Károly szolgálatában megmaradhatott volna
állandóan, de ő csak Bécsbe akart jutni minden áron. Semmiféle
rábeszélés a tervről őt lemondásra bírni nem volt képes.
Ifjuságáról, élményeiről nem igen szeretett beszélni. Franczia
születésünek, szibériai orosz fogolynak, konstantinápolyi eunuchnak,
háremi szökevénynek mondotta magát, de se nem hallgattak rá, se
nem hittek neki. Valami jámbor, szédelgő, német vándorló legénynek
tartották mindenütt. Vezetékneve nem jutott tudomásunkra,
keresztnevét Henrinek mondotta francziásan.
Végre az 1846-dik év elején Győrön keresztül Sopronba érkezett.
Ruhája ismét kopott és szennyes volt, noha most már nem
rongyokból állott. A mi kis pénzecskét itt-amott szerzett, Győrben
fölemészté betegsége. Ismét kéregetésből éldegélt s ismét koldus
módjára gyalogszerrel utazgatott. De Sopronból most már fokozódott
vágygyal törekedett Bécsbe jutni.
Februárban, kegyetlen hideg téli napon érkezett Veperdre, egy
kis német faluba Sopronmegyében.
Át volt fázva keményen. Öregség, ruhátlanság, hideg és
nélkülözés miatt dideregtek tagjai. Átmelegedni bement a falu
korcsmájába.
A falu birája, jókedvü, kedélyes német paraszt, ott iddogált és
beszélgetett a korcsmában. A jövevényt szegény, kiéhezett vándorló
legénynek tartotta s elkezdte őt faggatni neve, születése, eredete,
mestersége, vagyona és utazási czélja felől.
Henri felelgetett a kérdésekre s röviden elmondá, hogy ő
franczia, most jön török rabságból s haza akar menni
Francziaországba, hanem előbb Bécsbe akar menni minden áron.
– Aztán van-e útleveled? – kérdezé tőle a községbiró.
– Nincs, de nem is kell, – mondá Henri, – két év óta vagyok már
Magyarországon, soha sem kértek tőlem.
– Az megint más, hanem Ausztriába a lineán át nem lehet menni
útlevél nélkül, ott elfognak és megint visszaadnak a török kezébe.
Egy perczre megrezzent Henri, de aztán mosolygásra fordította a
dolgot.
– Nem lehet az, – azonban majd valahogy elintézem a dolgot.
Nem beszélt többet a dologról, hanem mulattatta a birót
egyébként. A birónak megtetszett a szegény öreg s ellátta őt borral
és ennivalóval egész szivességgel.
A következő napon tovább ment Henri Kabold felé. Itt akart
átmenni a határon.
A határon vámhivatal állott s osztrák pénzügyőrök és csendőrök
vigyáztak az átmenőkre.
Henri nem akart vagy nem mert utazási szándékával rögtön
előállani, hanem nagy figyelemmel leste, mi történik azokkal, a kik
Ausztriába átmenni akarnak. Bizony jól látta azt, hogy mindenkinek
meg kell állani, batyuját vagy kocsiterhét megmutatni s valami
útlevelet vagy igazolványt felmutatni.
A vámon nem mert jelentkezni. Visszatért Kaboldra s egy
kocsmában kérdezősködött, miként lehetne neki útlevél nélkül
Bécsbe jutni. A kérdésre nem kapott megnyugtató választ. Sőt,
mikor kiejtette száján, hogy ő szökevény, menten ráijesztettek, hogy
Ausztriában elfogják bizonyosan s visszakisérik oda, a honnan
elszökött.
Aggodalma leírhatatlan volt. Majdnem kétségbeesés fogta el a
szerencsétlen öreg embert arra a gondolatra, hogy ő ime itt van
Bécshez közel és oda be nem juthat, sőt attól kell tartania, hogy
mint szökevényt ki adják a töröknek.
Egy jó ötlete támadt. A veperdi biró jó ember, az majd segít ő
rajta.
Visszaindult tehát Veperdre s másnap oda hóban, hidegben,
zivatarban megérkezett.
A veperdi biró nevetve fogadta az öreg bujdosót.
– No atyafi, ugy-e megmondtam, hogy nem tudsz átmenni a
határon?
– Megmondta biró úr és úgy is lett, nem mertem megpróbálni,
hogy útlevél nélkül átsurranjak a határon.
– Nem is lett volna tanácsos, de hát már most mibe fogsz?
– Éppen azért jöttem vissza biró urhoz, hogy engem
megsegítsen. Lássa biró ur, én öreg ember vagyok, húsz éves
koromban elszakadtam Francziaországból, azóta nem láttam
szülőföldemet, nem is hallottam róla. Rabbá tettek a muszkák,
azoktól elszöktem; rabbá tettek a törökök, azoktól is elmenekültem.
Itt ugyan Magyarországon meg tudnék élni koldusmódra, de ha már
oly közel vagyok Francziaországhoz, szeretnék haza menni, hogy ott
haljak meg, ott temessenek el, a hol születtem. De se pénzem, se
útlevelem. Ha Bécsben a franczia követséghez juthatnék s ott
sorsomat elmondanám: vissza szállítanának hazámba könnyü szerrel.
Biró úr, maga jó ember, én ur voltam fiatal koromban, most koldus
vagyok, segítsen rajtam, hogy Bécsbe juthassak a nélkül, hogy
megint elfognának. Öreg vagyok már, se jót, se rosszat nem tehetek,
az isten meg fogja érte segíteni.
– No atyafi, én ugyan most sem hiszem, hogy franczia vagy –
szólt a veperdi biró, kinek megesett szíve a szerencsétlen öregnek
sorsán – hanem te lássad a magad dolgát, én segítek rajtad, ha
tanácsomat elfogadod.
– Elfogadom, ha rosszabbul nem leszek tőle.
– Persze, hogy nem, majd magad is beláthatod. A tanácsom
pedig ebből áll: maradj itt Veperden egy pár napig, majd én ellátlak
étellel, itallal, meleg szobával. Egy pár nap múlva összeül az úriszék
Lakompakon, ott lesznek a megyei urak és a kegyelmes herczeg
főemberei. Én téged megkötöztetlek, mint afféle csavargó embert, a
kinek se országa, se hazája. Aztán oda kisértetlek az úriszék elé,
mint csavargót s elmegyek veled úgy véletlenül magam is. Ott majd
kihallgat a szolgabiró vagy az esküdt úr. Jó ember mind a kettő. Ott
beszéld el sorsodat. A megyei urak nem rossz emberek. Ha
igazságban nem találnak: kapsz huszonöt botot s aztán elkergetnek;
– ha pedig igazságban találnak: akkor az uraság költségén
elkisértetnek Bécsbe a franczia követhez, – ha pedig megesik rajtad
a szívük, még borravalót is adnak.
– Mi az az úriszék? Az a járási biróság vagy a policzia?
– Látszik, hogy szamár vagy; ott itél a vármegye, meg a
kegyelmes herczeg a szegény ember bajában, nincs minálunk
policzia, az csak Ausztriában van.
– Tehát biróság, de hát akkor nincsen annak hatalma ahhoz,
hogy engem Bécsbe kisértessen a franczia követhez?
– Atyafi, a vármegye urainak, meg a kegyelmes herczegnek
mindenre van hatalma, ha akarják. Egyébiránt ez csak az én
tanácsom, ha tetszik a szó: én segítek rajtad.
Sokáig gondolkodott az öreg és sokszor nézegetett a veperdi biró
szemei közé. Rossz indulatot nem fedezett föl e szemekben s aztán
elgondolta, hogy a legrosszabb esetben mindig megmaradhat
Magyarországon, szegény, hazátlan koldusnak. Elfogadta a veperdi
biró tanácsát.
Lakompakon február végén csakugyan összeült az úriszék. Elnöke
volt Badicz Endre sopronmegyei földbirtokos s öreg táblabiró. Az
uraság részéről Szemerey Sándor, herczeg Eszterházy Pálnak
uradalmi főfiskusa és Seicz viczefiskus voltak jelen. Ezek ma már
mind nem élnek, hanem él még Nagy Imre legfőbb itélőszéki kuriai
biró, ki akkor Szemerey Sándornak patvaristája volt s mint ilyen,
valószinüleg jelen volt az úriszéki tárgyalásokon s valószinüleg
emlékszik még a szegény francziának, az örökös bujdosónak,
szívrázó, szomorú élettörténetére. Élnek még Lendvay József és
Tőttőssy Mihály öreg barátaim. Amaz sopronmegyei, mihályi
származás, most nyugalmazott táblabiró s akkor kanczellista a
főszolgabiróságnál. Emez veszprémmegyei birtokos, de 1846-ban
Sopronmegye főszolgabirája. Mindkettő jelen volt az uriszéken.
Nekem Lendvay József beszélte el az esetet.
A veperdi biró megtette a mit igért. Az öreg koldust
megkötöztette s bekisértette az úriszék elé. Bement a falubeli
ügyesbajos emberekkel maga is és úgy véletlenül előhozta a
csavargót a szolgabiró előtt, hogy annak jóakaró figyelmét iránta
fölgerjeszsze. A sor azonban nem került mindjárt a csavargóra s
azért annak pár napot és éjszakát az urodalmi fogházban őrizet alatt
kellett töltenie. Elvégre ügye az uriszék elé, nyilvános tárgyalásra
került.
Az uriszék tagjai rendkivüli érdeklődéssel hallgatták meg az
örökös bujdosó elbeszélését. Soha, még főbenjáró ügy miatt is ugy
el nem mulasztották az ebéden és vacsorán való megjelenés
pontosságát, mint a mikor az öreg franczia a maga élettörténetét
röviden és szárazon elbeszélte.
E történetet, a mint azt a jelenvoltak emlékezetükben
megtartották, el fogom beszélni.
HADI FOGLYOK – BÁNYARABOK.
(A nagy császárt gyalázni nem engedik. – Megfojtják az orosz tábornokot.
– Hetven franczia meghal, a többit elviszik az uráli bányákba. –
Petropavlovszkojban.)

Henri saját előadása szerint csakugyan franczia volt s 1792-ben


született. Ifju korában besorozták a császári hadseregbe s a nagy
császárral, I. Napoleonnal, mint altiszt, részt vett a moszkvai téli
hadjáratban.
Jó családból származott, vagyonos ifju volt, pénzzel és
ruhanemüvel kellőleg el volt látva s kiállta a szomorú visszavonulás
óriási viszontagságait. Ifjuság, vasegészség s jelentékeny testi erő
megóvták a fagytól és éhhaláltól.
De nem óvhatták meg a fogságba eséstől. Valahol
Lengyelországban a visszavonulás közben elfogták. Nem magát
egyedül, hanem vele együtt körülbelül két-háromszáz legényt
tisztjeikkel és altisztjeikkel együtt. Tél volt, hideg volt, fáztak és
éheztek, alig bírták ruhájukat, alig tudták emelni fegyverüket. Egy
pár század orosz lovasság körülfogta őket s az a csapat, melynek
hősi része volt a világ meghódításában, csaknem gyáván látszott
magát megadni.
– Urak, – mondá Henri a lakompati uriszék előtt, – midőn mi
Mohilevben kissé magunkhoz jöttünk, mikor már adtak enni s egy
kissé fölmelegedtünk, akkor eszünkbe jutott, mily gyáván hagytuk
elfogni magunkat. Szerettük volna izmainkat körömmel tépni szét
szégyenünkben. De hiába, akkor nem bírtuk el még a fegyvert sem,
nemhogy verekedni tudtunk volna.
Henri nem emlékezett biztosan arra, hol fogták el őt és társait.
Csak arra emlékezett, hogy néhány napi kínos gyaloglás után
Mohilevbe kisérték s ott zárták el őket a régi vár omladozó
kaszamátáiban.
Sebek, nélkülözés, durva bánásmód, embertelen fegyelmi
büntetések miatt sokan elhaltak közülök. Mire nyár lett, alig volt
életben a csapatnak fele. A kik életben maradtak: azokat julius
elején elindították Szentpétervár felé. Október lett mire a fővárosba
értek, rongyban és mezítelen lábbal. Még mindig az a ruhájuk volt,
melylyel Francziaország látta el őket másfél év előtt.
A városba azonban nem ily rongyosan lettek bekisérve. Délutáni
időtájban, hideg, tiszta őszi napon értek a főváros közelébe.
Láthatták a leáldozó nap fényénél a büszke czári fővárosnak csillogó
tornyait, de éjszakára oda be nem mehettek. Künn kellett tölteniök
az éjet a szabadban, kozákok őrizete alatt, fázva, dideregve. A
következő napon ott a szabad ég alatt kaptak uj ruhát és pedig uj
franczia császári egyenruhát. Kocsikon hozták ki Szentpétervárról.
Egyuttal meg is vendégelték őket meleg étellel, hideg sós hússal,
barna kenyérrel s elegendő vutkival. Így kisértettek be a fővárosba
látványul a népnek, dicsőségére a czárnak s elégtételül az orosz
hadseregnek. Azért adták az uj egyenruhát, hogy büszkén
mondhassák el rájuk mutatva: ime a híres kalandornak,
Napoleonnak fogoly katonái!
– Meg nem mondhatom, – mondá Henri, – mennyire fájt nekünk
e megaláztatás. Jobb szerettük volna, ha rongyainkat hagyják meg
didergő testünkön s ha mezitláb hurczoltatunk végig a főváros havas
utczáin. De még jobban fájt, a hogy császárunkról beszéltek, mint
valami csavargóról és szökevényről. Mi még akkor sem az elbai
számüzetésről, sem a waterlooi csatáról nem tudtunk semmit. Mi
csak azt tudtuk, hogy részt vettünk az auszterlitzi és jénai csatákban.
Volt a foglyok közt egy kapitány. Bátor, önérzetes, fiatal ember.
Midőn a foglyokat a laktanyába kisérték, egy magasrangu orosz
törzstiszt, tábornok vagy afféle, szemlét tartott a foglyok fölött s
franczia nyelven szólott hozzájuk. A fiatal fogoly kapitányt
ellenállhatatlan düh fogta el, midőn a tábornok a nagy császárt
gyalázta.
– Míg barbárok beszéltek velem – szólt – eltűrtem minden szó
nélkül. Önnek, nyomorult nem tűröm el a császár gyalázását.
E szavakkal letépte magáról a fényes egyenruhát s odavágta a
tábornok szemei közé.
– Verjétek agyon! – kiáltá tajtékzó dühvel a tábornok.
Orosz katonák ugrottak oda. Megkapták és megkötözték a
kapitányt, letépték ingét s elkezdték ütni kancsukával.
– Nem nézhettük – folytatá Henri – ez irtózatos jelenetet.
Odarohantunk puszta kézzel a fegyveresek közé. Agyon lőttek és
szúrtak közülünk hetvenet, de a tábornokot megfojtottuk. A miért
rosszul beszélt a nagy császárról.
E tény eldöntötte az életben maradottak sorsát. Mindegyik kapott
száz korbácsütést, még a sebesültek is. Ezek aztán el is haltak
valamennyien. A ki e vadállati bántalmakat kiállhatta, azt hideg,
nyirkos kaszamátabörtönbe zárták el. Igy húzták ki a telet. Sokan
elhaltak közülök betegség és nélkülözések miatt. Gyakran a hulla
napokig hevert az élők között. Henri, az öreg menekülő, még most is
elborzadott, a mint e pokoli tanya eszébe jutott. Pedig most már
öreg ember és akkor még fiatal ember volt.
Az 1816-dik év április havában kivették a foglyokat a földalatti
börtönből. Nyilt, világos, szellős helyre szállították őket s élvezhetőbb
táplálékot adtak nekik táplálékul. Adtak nekik uj ruhát is. Birkabőr
kucsmát, vastag bagaria csizmát, szürke daróczból készült ujjas
köpenyeget s egy durva pakróczot.
Május hóban egy napon az őrök azt parancsolták, hogy a
pakróczot tekerjék össze s egybe kötve akasszák vállukra, mint a
hogy a katona szokta nyáron át köpenyét vállára akasztani. Mikor ez
megtörtént, nagy csapat katona fogta őket körül s ezek fedezete
mellett a foglyok kezeire láncz veretett s a lánczczal kettőnként
kezüknél fogva összekötöztettek. A ki ellenállt, zajt ütött, tiltakozott
vagy káromkodott: azt véresre verték kancsukával, egy fogolynak
egyik szemét is kiütötték. Mindegyiknek mellére egy bádog lemezt
akasztottak, melyre egy-egy szám volt rásajtolva. Estefelé pedig
kovácsok jöttek vassal és kalapácscsal és szegekkel s mindegyik
fogoly lábára a bagaria csizmaszáron kívül négy vagy öt fontos
vaskarikát kovácsoltak. Sem a vaskarikát levenni, sem a csizmát
levetni ezután nem voltak képesek.
Este tíz óra után, páronként egymásután a mint össze voltak
lánczolva, kiindították őket a kaszárnya udvaráról az utczára. Az
utczák, merre elhaladtak, teljesen néptelenek valának. A körülöttük,
előttük és utánuk lépdelő lovas kozákokon kívül nem találkoztak
senkivel.
Nagy későn kiértek a város végére. A városban beszélniök nem
volt szabad. Ki hangot ejtett, a korbács azonnal pattogott a nyaka
körül. A városon kívül a sötétben valami kisebb őrház-féle előtt
megállapodtak. Itt kaptak enni és inni, miután sem délben, sem este
az nap még nem kaptak semmit. Étkezés után megengedték nekik
az alvást, de csak hajnalig. Hajnalban útnak indultak kelet felé. Hova
kisérik őket, sem nem tudták, sem elgondolni nem voltak képesek,
sem kérdezniök nem volt szabad. Nem is igen tudtak beszélni az
őrökkel, de ha tudtak volna is, feleletet nem kaphattak. Minden
kérdésre abból állt a felelet, hogy a kozák fenyegetőleg mutatta és
rázta kancsukáját.
Így mentek napokon és heteken át. Naponként nem nagy utat
kellett tenniök. Éjszakánkint mindig a falvakon és városokon kívül
tanyáztak. Ha falun mentek keresztül: szólni az emberekhez nem
volt szabad. A ki szólni mert, kegyetlenül lakolt. Jó emberek gyakran
adtak nekik kenyeret, sót és vutkit. Ezt szabad volt elvenni.
Egykor valamely folyóvizen, melynek nevét nem tudta Henri,
hajókra gyömöszölték őket. A hajóról Perm nevü városban szálltak
ki. Innen ismét gyalog kellett utazniok. A sok szenvedés miatt
többen elhaltak, néhányat pedig kocsikon hurczoltak a csapat után.
Már heteken át hegyes vidéken, esőben, hóban és hidegben,
erdők és szakadékok közt utaztak, midőn végre elértek egy várost,
melyet Petropavlovszkoj-nak neveztek. Azt hitték, itt véget ér
szenvedésük.
Csalódtak.
Petropavlovszkoj jó nagy területen fekvő város. A katonai főnök
lakásán, néhány kaszárnyán s pár magánházon kívül, melyek kőből
épültek, az egész város orosz falusi házak mintájára faházakból
állott, nagy telkekkel, nagy udvarokkal, hosszú széles utczákkal.
Lakossága valamikor fegyenczekből szaporodott fel.
A foglyokat itt a kozák vezetők valami katonai főnök vagy
kormányzó-félének adták át. S fogadtatásuk azzal kezdődött, hogy
ismét kaszárnyába, börtönbe zárták.
Itt azonban nem maradtak sokáig. Pár hét alatt szétosztották
őket a bányatelepek közt. Ekkor tudták meg, hogy ők voltaképen
örök rabságra kárhoztatott bányafoglyok, éppen úgy, mint azok, a
kiket Szibériába küldenek. Innen tehát nincs menekülés. Ők többé
Francziaországot sohasem fogják látni. Ők a művelt világnak még
csak hírt sem adhatnak arról, hogy hova temette el őket a zsarnok
erőszak. Itt kell nekik élni és itt kell nekik meghalni a jekaterinburgi
Urál hegyek platina-, ólom- és arany bányáiban. Szülők, testvérek és
szeretők még csak sejteni sem tudják, hol fekszik a világ, merre van
az ország, melynek földjében csontjaik pihenni fognak. Hiszen
Francziaországban még madár sincs, mely erre járna.
Néhánynak lelkén erőt vett az őrjöngés e gondolatokra. De
társaik megnyugtatni törekedtek ezeket is. A legtöbb fogolyban nem
lázongott már a lélek annyira, mint Mohilev bástyaüregeiben és
Szentpétervár kaszárnya börtöneiben. A szenvedés megtanította őket
lemondani az önérzetről s istenre bízni sorsukat.
A bányák körül a külső, a földfeletti munkát bizták rájuk. S ők a
munkát eleinte kötelességszerüleg, később némi kedvvel és
figyelemmel végezték. Ha alázatosak voltak: nem bántotta őket a
muszka. Ha egy korty vutkival megkinálhatták az őröket, az őrök
még jókedvü emberekké is váltak. A lakó népség csakhamar
megszerette őket.
Három évig tartott a bányamunka. 1819-ben megengedték nekik,
hogy Petropavlovszkojba s környékére vonulhassanak s némi
szabadságot élvezhessenek. Foglyok voltak, felügyelet alatt álltak
ezentul is, de szabad volt nekik a városban és környékén őrök nélkül
járni, lakást bérelni, faházat építeni, cselédnek vagy munkásnak
elszegődni s önsorsukról gondoskodni.
A csapatnak több mint fele iparos volt otthon. Ezek rögtön kaptak
alkalmazást tisztességes orosz iparosoknál, a kik közül a
legügyesebb sem értett a mesterséghez annyira, mint közülök a
leggyámoltalanabb. A többi is megtanult valami mesterséget. A kik
elszegődtek, azok teljes ellátást s 7–8 kopeket kaptak hetenként.
Volt olyan, a ki felvitte 12 kopekig. Valami tizenöten odajutottak,
hogy házat is emeltek maguknak, durva faragványu fából tákolva
össze valahogy. Ezek a maguk kezére dolgozhattak s nem rosszul
ment dolguk. Kettő közülök meg is nősült. A többi azonban
reménykedett, hogy egykor még haza mehet Francziaországba.
Egymást bátorították, egymást el nem hagyták, a vutkiivást a
legszerényebb mértékben gyakorolták s kezdték a fejüket terveken
törni, melyek segélyével megszabadulhatnának.
A SZÖKÉS AZ URALBÓL.
(A katonai kormányzó gazdaasszonya. – Utlevelet kapnak. –
Verchoturjében és Irbitben. – A dalmatovi jólelkü barát. – A karavánok. –
A sós pusztákon. – Végre elérik, a kik elérik Orenburgot.)

Harmadfél év alatt a foglyok összes vagyona mintegy 2000 rubel


készpénzre ment. Miután ezt összeszámították: azt gondolták, hogy
ezzel már lehet kezdeni valamit. Életben és egészségesek voltak
ötvennyolczan. Háromról nem tudták, hogy a bányák körül hol és
mikor veszett el. A többi meghalt. A kettő, a ki megnősült, nem akart
tudni a menekülésről. Ezenkívül tizenegy elhatározta, hogy a
menekülés bizonyos veszélyeivel nem néz szembe, bizonytalan
sikerére nem számit. De azért valamennyi áldozatkészséggel
ajánlotta fel mindenét a menekülés megkönnyítésére.
Lovuk volt mindössze tizennyolcz. Nagy része gyönge ugyan, de
néhány heti utazást télen is megbír, ha egynek hátára csak egy
ember ül. De a kik elszánták magukat a menekülésre, azok voltak
negyvenöten. Tehát vagy venni, vagy bérelni kellett huszonhét lovat.
A bérlés a lótulajdonos kárával járt volna, mert hiszen a lovat soha
vissza nem adhatták s visszaadni nem is akarták, de miután a lóvétel
vagy 800 rubeljüket elnyelte volna, a bérlésben kellett
megnyugodniok.
A petropavlovszkoji katonai kormányzó, kinek különösen a
bányafoglyokra kellett felügyelni, azokat a kisérettől átvenni s
azoknak minden szökési kisérleteit meggátolni, hajlott koru iszákos
ember volt, durva, embertelen, valódi példánya a kegyelemből
kiesett s büntetésből az Urálba küldött orosz főtiszteknek. Volt

You might also like