There are a few things you probably need to ask yourself before trying to book projects / find agencies to work through (although I know much less about how agencies operate).
Your's is a unique question in that you're new to both software development and freelancing.
Can you build it?: Whatever projects you're trying to win (either a specific project, or a specific kind of project) - can you actually do it? When you're starting out there's less room for project where you need to learn something new / explore new technology to complete.
An experienced developer has a good feel for how long / how difficult it will be tackle a kind problem that they've not really worked on in the past. A new developer should probably be confident that there are few unknowns before taking on a project.
With freelancing, there's generally no senior developer to go to when you run into a wall. So being very confident you can indeed build what the client is asking for is important.
Have you built it?: Confidence only goes so far. If you're thinking of iOS development, you should have already built something similar yourself. In software development, reading the documentation can be very far away from actually writing software that uses the API / SDK / Platform.
You mention that you're confident in your ability to build a simple app - before you start looking for projects like that, you need to have actually build a few small apps.
Will they buy it?: Honestly, the simplest way to identify that you're ready to start looking for clients, is seeing if they'll actually hire you. If you're confident in your ability and experience building whatever the project needs, then the next test is to see if you can convince a client of that.
If you can't, ask why. And understand that since you're new to both freelancing and development, you can't likely demand the rate / price an experienced developer could when they started freelancing (which again, is likely less than the rates of an established freelance).
Know that your pricing should probably include the understanding that someone of what you're making is reputation. And know that if you end up charging more than the value (you charge what an established freelance developer would, but it's not the same quality, or it takes more time, etc) - you'll likely up paying for that difference with your reputation.
[This is all geared toward someone new to development and freelancing. If you're already an experienced developer, then the question is more about having considered and determined how to bill as a freelancer (vrs being an employee), understanding that there's no longer the support of a team - but it ends the same, see if clients will hire you. If not, identify why not.]