All battle oriented Perception rolls I have players do them out in the open. There are a lot of rerolls out there, and also if a character rolls a 20 and still can't find something, they know they have to find another solution.
If a character enters stealth mode and is trying to find traps, I prefer to roll Perception checks in secret. I think it ruins the suspense if a player knows the total of his Perception check: less than 20 will usually be a failure, while over 30 will usually be a success. New players may also metagame, knowing that they rolled a 1 a Perception check, so deciding not to enter an area.
Otherwise, I use this rule: most active Perception checks are rolled by the players, while most receptive checks are made by me in secret. If an event happens that the players are unaware of, but I need to see if they are aware of it, I'll usually do the rolls myself so that they don't know to look for something. Or, if the players enter a room, I will do Perception checks for them in secret. If they ask to search a room, I'll have them roll their own checks. Every once in a while, I'll ask everyone to roll a Perception check for something that hasn't happened yet to throw people off their game.
People like to roll dice, as that's a lot of the fun in the game. However, you are telling a story and need to know when it's important to withhold information. Trying to find the right balance is tricky, but I definitely recommend against doing all the one or all the other. When in doubt, have everyone roll their own checks.
I prefer having players roll their checks as they happen. Rolling checks at the beginning of a game for the entire session is kind of a bummer, as you already know ahead of time if you're likely to succeed or fail on most of your checks.