Hybrid app but requires to target to android and ios platform

Hi, i am considering to use ionic to build my hybrid mobile app. But i’m confused with few things:

  1. Why there’s need to choose target platform(android/ios) when hybrid app is a cross-platform app(writing only one-time code to be deployed in both android and ios or windows phone).

  2. So in order to build hybrid app using ionic, do i need to write different code for android and ios? and packaged twice?

  3. Is there any other interface tool other than using command line tool?

An hybrid app is distributed as a native package: ipa on iOS and apk on Android, in order to package it you must use platform tools.
So you need a mac to build for iOS, and naything to build for Android.
Also, in order to use device features, your app must use Cordova plugins that are made of native code exposed through a javascript interface.

Cordova offers you this abstraction layer in JS with tools, so that you don’t need to write different code for iOS and Android.
Ionic provides additional tool and UI elements to make your app look and feel as much as possible as a native app.

You can use some tools to avoid command line but it’s like develooping an angularjs web app: most advanced tools use command line, IDE and alikes are always behind.