Need advice about which tool to choose?Ask the StackShare community!

Android SDK

22K
16.9K
+ 1
786
Expo

459
531
+ 1
55
Add tool

Android SDK vs Expo: What are the differences?

Android SDK: An SDK that provides you the API libraries and developer tools necessary to build, test, and debug apps for Android. Android provides a rich application framework that allows you to build innovative apps and games for mobile devices in a Java language environment; Expo: Making React Native Easier. Exponent lets web developers build truly native apps that work across both iOS and Android by writing them once in just JavaScript.

Android SDK and Expo are primarily classified as "Frameworks (Full Stack)" and "Cross-Platform Mobile Development" tools respectively.

"Android development" is the primary reason why developers consider Android SDK over the competitors, whereas "Free" was stated as the key factor in picking Expo.

Expo is an open source tool with 6.55K GitHub stars and 748 GitHub forks. Here's a link to Expo's open source repository on GitHub.

According to the StackShare community, Android SDK has a broader approval, being mentioned in 1071 company stacks & 878 developers stacks; compared to Expo, which is listed in 27 company stacks and 26 developer stacks.

Advice on Android SDK and Expo
Needs advice
on
ReduxReduxReact NativeReact Native
and
ExpoExpo
in

Hello guys, I am new here. So, if I posted without specific guidelines, please ignore.

Basically, I am an iOS developer and developing native apps for the last three years. Recently, I started learning React Native to develop apps for both platforms. If anyone out there knows any useful resources that will become a better react native developer.

#newbie

See more
Replies (1)
Javier Silva Ortíz
Senior Full Stack Developer at Aleph Engineering · | 6 upvotes · 184.5K views
Recommends
ReduxRedux

Well, the first resource I would recommend you is my upcoming book by Packt Publishing, "Professional React Native", but it's due late January next year :) . Now jokes aside (the book's real by the way :) ), the easiest way to build a iOS/Android/Web app with React Native is to do: npm install -g expo-cli expo init some-project cd some-project expo eject

You might have heard of Expo, but trust me, stay away from it. Expo highest value is that it's an already pre-configured 3 platforms environment, but if you don't eject then you're vendor-locked to what Expo has to offer in iOS and Android, which is very poor compared to going full React Native on these platforms, they can't even handle Google Sign In properly and by the way, even if your app is 10 lines of code your app size will be over 40 MB if you don't eject, yep it's that bad, plus the performance is regular and the loading times slow, not to mention that you're stuck with their build service which the free tier makes you wait for hours for a free build slot. It's important to note that when ejecting you don't lose the Web, you simply do expo start --web to start your dev environment and expo build:web to build a static website that you can serve with any web server. Regarding state management, don't bother with "lifting state up" philosophies mixed with Context API to manage your state, lifting state is a great pattern and helps your codebase, Context is great to avoid prop-drilling, but NEVER mix them to achieve app-wide state management, for that, simply go for Redux or MobX, the hype is all about Redux, but I consider MobX far better in many aspects. However, as you're getting new into this I would recommend you start with Redux AND PLEASE grab yourself npm install @manaflair/redux-batch so that you can batch updates and don't bring your app to a crawl. Forget that "connect HOC" thing with React-Redux, don't bother for a second with it, go with Hooks and useSelector and useDispatch and the likes, it will make your code SO much cleaner and smaller. Adopt clean and new Hooks philosophy, avoid writing class components as much as possible and write function components augmented with Hooks.

See more
Needs advice
on
Spring BootSpring BootDjangoDjango
and
Android SDKAndroid SDK

I've just finished my Masters degree and I am looking at routes into developing my Java knowledge.

The University I studied at requested that all practical Java assignments were done in Java Swing and as such I have a strong understanding in that area of development. Looking at job prospects, many employers are now looking for Java Spring or Android developers.

The plan is to move away from Java SE and skill up in Android development. I was planning on learning Spring Boot to gain exposure in web application development, however looking at StackShare, Django seems to be the more attractive choice for developers.

Does anyone have any advice on which routes/stacks would be the most advisable to adopt. If Spring is not receiving as much exposure or support as Django, is it worth adding to my stack?

See more
Replies (2)
Recommends
Spring BootSpring Boot

Spring is generally more an enterprise solution, while I see Django being more startup oriented. Django is lightweight and fast (development time, not runtime!). Spring seems to have more focus on microservice architecture than django, if that matters to you at all. Starting your project in Django, it automatically creates a backend 'admin panel' for you to use and customize. You will not find this in the more serious Spring Boot.

See more
Jeffrey Dabo
Software Engineer at Jeffrey Dabo · | 7 upvotes · 302.2K views
Recommends
Spring BootSpring Boot

Though Java is a strong language and basically the first language to be used in Mobile Development (Android), the framework Spring Boot is not as modern as the Django framework which is based on one of the most popular languages today - Python. Moreover the Python language is far more simpler in syntax and just as powerful as Java. However, Java has scaled up it's performance and the Spring Boot framework can support dynamic web development as well as android development. Whichever way you choose to go, there will be no regrets - trust me.

See more
Decisions about Android SDK and Expo
Omran Jamal
CTO & Co-founder at Bonton Connect · | 7 upvotes · 368.4K views

We actually initially wrote a lot of networking code in Kotlin but the complexities involved prompted us to try and compile NodeJS for Android and port over all the networking logic to Node and communicate with node over the Java Native Interface.

This turned out to be a great decision considering our battery usage fell by 40% and rate of development increased by a factor of 2.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Android SDK
Pros of Expo
  • 285
    Android development
  • 153
    Necessary for android
  • 127
    Android studio
  • 85
    Mobile framework
  • 81
    Backed by google
  • 26
    Platform-tools
  • 21
    Eclipse + adt plugin
  • 4
    Powerful, simple, one stop environment
  • 2
    Больно
  • 2
    Free
  • 14
    Free
  • 11
    Hot Reload
  • 8
    Common ios and android app setup
  • 7
    Easy to learn
  • 6
    Streamlined
  • 5
    Open Source
  • 4
    Builds into a React Native app

Sign up to add or upvote prosMake informed product decisions

What is Android SDK?

Android provides a rich application framework that allows you to build innovative apps and games for mobile devices in a Java language environment.

What is Expo?

It is a framework and a platform for universal React applications. It is a set of tools and services built around React Native and native platforms that help you develop, build, deploy, and quickly iterate on iOS, Android, and web apps.

Need advice about which tool to choose?Ask the StackShare community!

Jobs that mention Android SDK and Expo as a desired skillset
Pinterest
San Francisco, CA, US; New York City, NY, US; Portland, OR, US; Seattle, WA, US
Pinterest
San Francisco, CA, US; New York City, NY, US; Portland, OR, US; Seattle, WA, US
CBRE
Malaysia Wilayah Persekutuan Kuala Lumpur Kuala Lumpur
CBRE
United States of America Texas Dallas
CBRE
United States of America Texas Richardson
What companies use Android SDK?
What companies use Expo?
See which teams inside your own company are using Android SDK or Expo.
Sign up for StackShare EnterpriseLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Android SDK?
What tools integrate with Expo?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

Android SDKBugsnagLeakCanary+3
5
968
Jul 16 2019 at 9:19PM

Bugsnag

JavaAndroid SDKBugsnag+3
3
288
GitHubPythonNode.js+47
53
70435
What are some alternatives to Android SDK and Expo?
Android Studio
Android Studio is a new Android development environment based on IntelliJ IDEA. It provides new features and improvements over Eclipse ADT and will be the official Android IDE once it's ready.
Ionic
Free and open source, Ionic offers a library of mobile and desktop-optimized HTML, CSS and JS components for building highly interactive apps. Use with Angular, React, Vue, or plain JavaScript.
React Native
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
Flutter
Flutter is a mobile app SDK to help developers and designers build modern mobile apps for iOS and Android.
Xamarin
Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.
See all alternatives