When you have an empty route object, it's mainly due to the fact that you are not using a router-outlet in your app.component.html.
Without this, you won't be able to get a meaningful route object with non empty subObjects, particularly params & queryParams.
Try to add <router-outlet><router-outlet>
just before calling your
<app-main-component></app-main-component>
Before that, make sure you have your query param ready in app-routing > which export the class Route used by App component :
param: '/param/:dynamicParam', path: MyMainComponent
Last thing of course, to get your param, I personnaly use this.route.snapshot.params.dynamicParam
where dynamicParam is the name used in your app-routing component :)