I'm reviving it because this is still an issue. It worked perfectly fine with Origin but now that we have EA app it does not.
I can't say much about Steam - I've heard it also doesn't work - but I made some tests with EA app.
If you set the command line args in EA app and run the game from EA app - it works. The game gets the command line args.
If you set the command line args in EA app and run the game from a shortcut or by opening the game exe - it doesn't work, no matter if EA app is running or not before starting the game.
And finally, if you set the command line args in a shortcut - it never works.
So please, fix it, it's really annoying.
Some technical info - when you start the game from a shortcut with some parameters, the game runs Origin or EA app by opening this:
origin2://game/launch/?offerIds=<some IDs>&cmdParams=<command line parameters>
The program that opens "origin2://" protocol is defined in a registry key: "HKEY_CLASSES_ROOT\origin2\shell\open\command".
For Origin - the program is "Origin.exe", so the main app.
For EA app - it's set to "EALauncher.exe", which in turns runs "EALaunchHelper.exe" (still with that "origin2://" info as the first parameter), which in turns run "EADesktop.exe" (without that "origin2://" info). So clearly there's a problem with communication between "EALaunchHelper.exe" and "EADesktop.exe".