Categories
Ebooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Computer in the office
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Multimedia trainings
- Real estate
- Persuasion and NLP
- Taxes
- Social policy
- Guides
- Presentations
- Leadership
- Public Relation
- Reports, analyses
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
E-press
- Architektura i wnętrza
- Biznes i Ekonomia
- Home and garden
- E-business
- Finances
- Personal finance
- Business
- Photography
- Computer science
- HR & Payroll
- Computers, Excel
- Accounts
- Culture and literature
- Scientific and academic
- Environmental protection
- Opinion-forming
- Education
- Taxes
- Travelling
- Psychology
- Religion
- Agriculture
- Book and press market
- Transport and Spedition
- Healthand beauty
-
History
-
Computer science
- Office applications
- Data bases
- Bioinformatics
- IT business
- CAD/CAM
- Digital Lifestyle
- DTP
- Electronics
- Digital photography
- Computer graphics
- Games
- Hacking
- Hardware
- IT w ekonomii
- Scientific software package
- School textbooks
- Computer basics
- Programming
- Mobile programming
- Internet servers
- Computer networks
- Start-up
- Operational systems
- Artificial intelligence
- Technology for children
- Webmastering
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Narrative poetry
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
School textbooks
-
Popular science and academic
- Archeology
- Bibliotekoznawstwo
- Cinema studies
- Philology
- Polish philology
- Philosophy
- Finanse i bankowość
- Geography
- Economy
- Trade. World economy
- History and archeology
- History of art and architecture
- Cultural studies
- Linguistics
- Literary studies
- Logistics
- Maths
- Medicine
- Humanities
- Pedagogy
- Educational aids
- Popular science
- Other
- Psychology
- Sociology
- Theatre studies
- Theology
- Economic theories and teachings
- Transport i spedycja
- Physical education
- Zarządzanie i marketing
-
Guides
-
Game guides
-
Professional and specialist guides
-
Law
- Health and Safety
- History
- Road Code. Driving license
- Law studies
- Healthcare
- General. Compendium of knowledge
- Academic textbooks
- Other
- Construction and local law
- Civil law
- Financial law
- Economic law
- Economic and trade law
- Criminal law
- Criminal law. Criminal offenses. Criminology
- International law
- International law
- Health care law
- Educational law
- Tax law
- Labor and social security law
- Public, constitutional and administrative law
- Family and Guardianship Code
- agricultural law
- Social law, labour law
- European Union law
- Industry
- Agricultural and environmental
- Dictionaries and encyclopedia
- Public procurement
- Management
-
Tourist guides and travel
- Africa
- Albums
- Southern America
- North and Central America
- Australia, New Zealand, Oceania
- Austria
- Asia
- Balkans
- Middle East
- Bulgary
- China
- Croatia
- The Czech Republic
- Denmark
- Egipt
- Estonia
- Europe
- France
- Mountains
- Greece
- Spain
- Holand
- Iceland
- Lithuania
- Latvia
- Mapy, Plany miast, Atlasy
- Mini travel guides
- Germany
- Norway
- Active travelling
- Poland
- Portugal
- Other
- Russia
- Romania
- Slovakia
- Slovenia
- Switzerland
- Sweden
- World
- Turkey
- Ukraine
- Hungary
- Great Britain
- Italy
-
Psychology
- Philosophy of life
- Kompetencje psychospołeczne
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Audiobooks
-
Business and economy
- Bitcoin
- Businesswoman
- Coaching
- Controlling
- E-business
- Economy
- Finances
- Stocks and investments
- Personal competence
- Communication and negotiation
- Small company
- Marketing
- Motivation
- Real estate
- Persuasion and NLP
- Taxes
- Guides
- Presentations
- Leadership
- Public Relation
- Secret
- Social Media
- Sales
- Start-up
- Your career
- Management
- Project management
- Human Resources
-
For children
-
For youth
-
Education
-
Encyclopedias, dictionaries
-
History
-
Computer science
-
Other
-
Foreign languages
-
Culture and art
-
School reading books
-
Literature
- Antology
- Ballade
- Biographies and autobiographies
- For adults
- Dramas
- Diaries, memoirs, letters
- Epic, epopee
- Essay
- Fantasy and science fiction
- Feuilletons
- Work of fiction
- Humour and satire
- Other
- Classical
- Crime fiction
- Non-fiction
- Fiction
- Mity i legendy
- Nobelists
- Novellas
- Moral
- Okultyzm i magia
- Short stories
- Memoirs
- Travelling
- Poetry
- Politics
- Popular science
- Novel
- Historical novel
- Prose
- Adventure
- Journalism, publicism
- Reportage novels
- Romans i literatura obyczajowa
- Sensational
- Thriller, Horror
- Interviews and memoirs
-
Natural sciences
-
Social sciences
-
Popular science and academic
-
Guides
-
Professional and specialist guides
-
Law
-
Tourist guides and travel
-
Psychology
- Philosophy of life
- Interpersonal communication
- Mindfulness
- General
- Persuasion and NLP
- Academic psychology
- Psychology of soul and mind
- Work psychology
- Relacje i związki
- Parenting and children psychology
- Problem solving
- Intellectual growth
- Secret
- Sexapeal
- Seduction
- Appearance and image
- Philosophy of life
-
Religion
-
Sport, fitness, diets
-
Technology and mechanics
Videocourses
-
Data bases
-
Big Data
-
Biznes, ekonomia i marketing
-
Cybersecurity
-
Data Science
-
DevOps
-
For children
-
Electronics
-
Graphics/Video/CAX
-
Games
-
Microsoft Office
-
Development tools
-
Programming
-
Personal growth
-
Computer networks
-
Operational systems
-
Software testing
-
Mobile devices
-
UX/UI
-
Web development
-
Management
Podcasts
- Ebooks
- Programming
- Programming techniques
- Android Native Development Kit Cookbook. Create Android apps using Native C/C++ with the expert guidance contained in this cookbook. From basic routines to advanced multimedia development, it helps you harness the full power of Android NDK
E-book details
Log in, If you're interested in the contents of the item.
Android Native Development Kit Cookbook. Create Android apps using Native C/C++ with the expert guidance contained in this cookbook. From basic routines to advanced multimedia development, it helps you harness the full power of Android NDK
Ebook
Building Android applications would usually mean that you spend all of your time working in Java. There are however times when this is not the most efficient or best method for the application being built. This is where Android NDK comes in. Android NDK allows the developer to write in Native C/C++, giving you the power to reuse code and libraries and also, in most cases, increase the speed and efficiency of your application.The Android Native Development Kit Cookbook will help you understand the development, building, and debugging of your native Android applications. We will discover and learn JNI programming and essential NDK APIs such as OpenGL ES, and the native application API. We will then explore the process of porting existing libraries and software to NDK. By the end of this book you will be able to build your own apps in NDK apps.Android Native Development Kit Cookbook begins with basic recipes that will help you in the building and debugging of native apps, and JNI programming. The recipes cover various topics of application development with Android NDK such as OpenGL programming and Multimedia programming. We will begin with a simple recipe, Hello NDK, before moving on to cover advanced topics with recipes on OpenGL ES that focus on 2D and 3D graphics, as well as recipes that discuss working with NDK and external APIs. If you are looking for ways to make your application available in Android and take measures to boost your application's performance, then this Cookbook is for you.
- Android Native Development Kit Cookbook
- Table of Contents
- Android Native Development Kit Cookbook
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Support files, eBooks, discount offers and more
- Why Subscribe?
- Free Access for Packt account holders
- Support files, eBooks, discount offers and more
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- 1. Hello NDK
- Introduction
- Setting up an Android NDK development environment in Windows
- Getting ready
- How to do it
- How it works
- Theres more
- Setting up an Android NDK development environment in Ubuntu Linux
- Getting ready
- How to do it
- How it works
- There's more
- Setting up an Android NDK development environment in Mac OS
- Getting ready
- How to do it
- How it works
- Updating Android NDK
- Getting ready
- How to do it
- How it works
- There's more
- Writing a Hello NDK program
- Getting ready
- How to do it
- How it works
- There's more
- 2. Java Native Interface
- Introduction
- Loading native libraries and registering native methods
- Getting ready
- How to do it
- How it works
- Passing parameters and receiving returns in primitive types
- Getting ready
- How to do it
- How it works
- Manipulating strings in JNI
- Getting ready
- How to do it
- How it works
- There's more
- Managing references in JNI
- How to do it
- How it works
- There's more
- Manipulating classes in JNI
- Getting ready
- How to do it
- How it works
- Manipulating objects in JNI
- Getting ready
- How to do it
- How it works
- Manipulating arrays in JNI
- Getting ready
- How to do it
- How it works
- Accessing Java static and instance fields in the native code
- Getting ready
- How to do it
- How it works
- Calling static and instance methods from the native code
- Getting ready
- How to do it
- How it works
- Caching jfieldID, jmethodID, and referencing data to improve performance
- Getting ready
- How to do it
- How it works
- Checking errors and handling exceptions in JNI
- Getting ready
- How to do it
- How it works
- There's more...
- Integrating assembly code in JNI
- Getting ready
- How to do it
- How it works
- 3. Build and Debug NDK Applications
- Introduction
- Building an Android NDK application at the command line
- Getting ready
- How to do it
- How it works
- There's more...
- Taking screenshots from the command line
- Building an Android NDK application in Eclipse
- Getting ready
- How to do it
- How it works...
- Building an Android NDK application for different ABIs
- Getting ready
- How to do it...
- How it works
- Building Android NDK applications for different CPU features
- Getting ready
- How to do it
- How it works
- There's more
- More about CPU feature detection
- Different approaches of building for different cpu features
- Debugging an Android NDK application with logging messages
- How to do it
- How it works...
- Debugging an Android NDK application with CheckJNI
- How to do it...
- How it works...
- Debugging an Android NDK application with NDK GDB
- Getting ready
- How to do it...
- How it works...
- Debugging an Android NDK application with CGDB
- Getting ready
- How to do it...
- How it works...
- Debugging an Android NDK application in Eclipse
- Getting ready
- How to do it...
- How it works...
- There's more...
- 4. Android NDK OpenGL ES API
- Introduction
- Drawing 2D Graphics and applying transforms with the OpenGL ES 1.x API
- Getting ready
- How to do it...
- How it works...
- OpenGL ES rendering display through GLSurfaceView
- Drawing objects at OpenGL ES
- Colors at OpenGL ES
- OpenGL ES transformation
- Drawing 3D graphics and lighting up the scene with the OpenGL ES 1.x API
- Getting ready
- How to do it...
- How it works...
- Mapping texture to 3D objects with the OpenGL ES 1.x API
- Getting ready
- How to do it...
- How it works...
- There's more...
- Drawing 3D graphics with the OpenGL ES 2.0 API
- Getting ready
- How to do it...
- How it works...
- OpenGL Shading Language (GLSL)
- How to use shader:
- There's more...
- Displaying graphics with EGL
- Getting ready
- How to do it...
- How it works...
- Window management
- There's more...
- 5. Android Native Application API
- Introduction
- Creating a native activity with the native_activity.h interface
- Getting ready
- How to do it
- How it works
- There's more
- Creating a native activity with the Android native app glue
- Getting ready
- How to do it
- How it works
- Managing native windows at Android NDK
- Getting ready
- How to do it
- How it works
- Detecting and handling input events at Android NDK
- Getting ready
- How to do it
- How it works
- Accessing sensors at Android NDK
- Getting ready
- How to do it
- How it works
- Managing assets at Android NDK
- Getting ready
- How to do it
- How it works
- There's more
- 6. Android NDK Multithreading
- Introduction
- Creating and terminating native threads at Android NDK
- Getting ready
- How to do it...
- How it works...
- Build with pthreads
- Thread creation
- Thread termination
- Synchronizing native threads with mutex at Android NDK
- How to do it...
- How it works...
- Initialize and destroy mutex
- Using the mutex
- There's more...
- Synchronizing native threads with conditional variables at Android NDK
- How to do it...
- How it works...
- Initialize and destroy conditional variables
- Using the conditional variable:
- There's more...
- Conditional variable attributes functions
- Timed conditional variable functions
- Synchronizing native threads with reader/writer locks at Android NDK
- Getting ready...
- How to do it...
- How it works...
- Initialize and destroy a reader/writer lock
- Using a reader/writer lock
- There's more...
- Timed read/write lock and trylock
- Reader/writer lock attribute functions
- Synchronizing native threads with semaphore at Android NDK
- Getting ready...
- How to do it...
- How it works...
- Initialize and destroy a semaphore
- Using a semaphore
- Scheduling native threads at Android NDK
- Getting ready...
- How to do it...
- How it works...
- Scheduling contention scope
- Scheduling policy and thread priority
- Scheduling using nice value/level
- Managing data for native threads at Android NDK
- Getting ready...
- How to do it...
- How it works...
- Creation and deletion of thread-specific data key
- Set and get thread-specific data
- 7. Other Android NDK API
- Introduction
- Programming with the jnigraphics library in Android NDK
- Getting ready
- How to do it...
- How it works...
- There's more
- Programming with the dynamic linker library in Android NDK
- Getting ready...
- How to do it...
- How it works...
- Programming with the zlib compression library in Android NDK
- Getting ready...
- How to do it...
- How it works...
- There's more...
- Programming audio with the OpenSL ES audio library in Android NDK
- Getting ready...
- How to do it...
- How it works...
- Object creation
- Changing states of objects
- Use and build with OpenSL ES Audio library
- OpenSL ES audio recording
- OpenSL ES audio playback
- There's more...
- Programming with the OpenMAX AL multimedia library in Android NDK
- Getting ready...
- How to do it...
- How it works...
- Use and build with the OpenMAX AL multimedia library:
- OpenMAX AL video playback
- There's more....
- 8. Porting and Using the Existing Libraries with Android NDK
- Introduction
- Porting a library as a shared library module with the Android NDK build system
- Getting ready
- How to do it...
- How it works...
- See also
- Porting a library as a static library module with the Android NDK build system
- Getting ready
- How to do it...
- How it works...
- See also
- Porting a library with its existing build system using the Android NDK toolchain
- How to do it...
- How it works...
- There's more...
- Using a library as a prebuilt library
- How to do it...
- How it works...
- Using a library in multiple projects with import-module
- How to do it...
- How it works...
- Porting a library that requires RTTI, exception, and STL support
- How to do it...
- How it works...
- 9. Porting an Existing Application to Android with NDK
- Introduction
- Porting a command-line executable to Android with an NDK build system
- Getting ready
- How to do it...
- How it works...
- Understanding the Android.mk files
- Porting a command-line executable to Android with an NDK standalone compiler
- Getting ready
- How to do it...
- How it works...
- Porting libpng
- Porting libseamcarv
- Porting fusch
- Adding GUI to a ported Android app
- How to do it...
- How it works...
- Using background threads at porting
- Getting ready
- How to do it...
- How it works...
- Sending messages from the native code
- Index
- Title: Android Native Development Kit Cookbook. Create Android apps using Native C/C++ with the expert guidance contained in this cookbook. From basic routines to advanced multimedia development, it helps you harness the full power of Android NDK
- Author: Liu Feipeng
- Original title: Android Native Development Kit Cookbook. Create Android apps using Native C/C++ with the expert guidance contained in this cookbook. From basic routines to advanced multimedia development, it helps you harness the full power of Android NDK.
- ISBN: 9781849691512, 9781849691512
- Date of issue: 2013-03-26
- Format: Ebook
- Item ID: e_3b74
- Publisher: Packt Publishing