Because I have no experience in other programming platforms.
I'd suggest learning on your own time. Enroll for some course on sites like Coursera, Udacity or Udemy.
In my opinion IT industry especially software development is not friendly for learn & develop considering the demanding client pressures.
That really depends on your company. Many companies organize training drives.
You can also ask your manager to arrange for training for yourself or your colleagues. You can justify by saying that this will benefit not only yourself but also the company because you can use the skills to implement solutions. If they don't agree, then better learn on your own. If you think that the work is too pressurizing, you should consider switching to another company. You might still want to brush up on your skills if you want to attend an interview for another company.
There are clients who demand the projects to be delivered within the given amount of time & companies despite knowing that it is not practically possible, agree with them.
This is again a management issue. If your manager is a "yes man" to the clients, then speak to his manager or give feedback to HR. Note that you don't owe any loyalty to the company and you don't have to work like a slave. But then again, this is usually the work of a team lead, not a manager. A team lead would analyze the client's requirement and flatly say if it's not possible in the timeframe or what's the dependencies of the requirement. If they don't agree, then it's the team lead's responsibility to push back. Since you said earlier that you don't have a team lead, then I guess it's up to you: Either push back against their requirements with sensible justification. It's better to speak up than accept a task that you won't be able to deliver, with sensible justification. In private with your manager if possible.
Regarding app development, since the app is the end product, it is the app developers who are questioned 1st & we have to make sure it is not the mistake is not in app side.
So, how is your team organized? Who leads your team? I have never seen a company where individual developers are held responsible for the whole application's functionality. There is always a team lead or product owner who is responsible for the deliverables. The product owner is someone who's job is to know the functional aspects of the project and to understand the client's expectation and requirement. The product owner passes down the requirements to one or more team leads (depending on the subdomains of the project) and the team leads will then break the requirements into smaller tasks and assign each task to the team members. As such the product owner and the team lead are the first ones to get chewed up if the deliverables don't meet expectations.
If upper management is speaking to your directly, then either you are screwed up really bad or your management is kind of in shambles.
In any case, if you feel like the pressure is too much or you don't like the work culture of your company, consider switching to another company. But note that depending upon the years of experience, the expectations of your future employers will also be higher. You just need to brush up your skills and attend as many interviews as possible.