Considérant en fait et en droit :
1.
A._, ressortissant de Serbie (Albanais de Serbie), est né en 1992. Arrivé en Suisse en 1996, il a été mis au bénéfice d'une autorisation de séjour, puis d'établissement, dont le délai de contrôle est arrivé à échéance le 10 mars 2019. Alors qu'il était mineur, A._, a été condamné:
- le 11 décembre 2008, à 7 jours de privation de liberté pour lésions corporelles simples et contraventions à la loi fédérale sur les stupéfiants (LStup),
- le 7 octobre 2009, à 10 jours de travail pour infractions à la LStup et à la loi fédérale sur les armes,
- le 30 juin 2010, à 15 jours de peine privative de liberté pour lésions corporelles simples, agression, violence ou menace contre les autorités et les fonctionnaires, contraventions à la LStup.
Une fois majeur, il a été condamné, le 9 décembre 2014, à une peine pécuniaire de 240 jours-amende, dont 120 avec sursis pendant cinq ans, ainsi qu'à une amende de 600 fr., pour lésions corporelles simples, tentative d'escroquerie, injure, tentative de menaces, contrainte, induction de la justice en erreur, conducteur se trouvant dans l'incapacité de conduire (véhicule automobile, alcool au volant et autres raisons), violation des règles de la circulation routière, contravention selon l'<ref-law>, contraventions à la loi cantonale fribourgeoise d'application du code pénal suisse.
En référence à ces condamnations, le Service de la population et des migrants du canton de Fribourg (ci-après: le Service cantonal) a adressé à A._ un sérieux avertissement par courrier du 12 février 2015, l'informant qu'il risquait la révocation de son autorisation d'établissement s'il poursuivait ses activités délictueuses. Par la suite, A._ a encore été condamné:
- le 28 août 2015, à une peine pécuniaire de 15 jours-amende sans sursis pour avoir conduit un véhicule sans permis de conduire,
- le 13 mars 2018, à une peine privative de liberté de 46 mois, sous déduction de la détention provisoire de 131 jours, et à une amende de 500 fr., pour crime selon l'<ref-law> (grande mise en danger de la santé), crime selon l'<ref-law> (commis en bande), contravention à l'<ref-law>, violation grave qualifiée des règles de la circulation routière et contravention à la loi cantonale fribourgeoise d'application du code pénal suisse. A cette occasion, le sursis partiel qui lui avait été accordé lors de sa condamnation le 9 décembre 2014 a été révoqué.
Au 23 novembre 2018, A._ faisait l'objet de poursuites pour un montant de 33'138 fr. 98 et d'actes de défaut de biens pour un montant de 81'315 fr.05.
Après avoir pris acte de sa dernière condamnation et de sa situation financière, le Service cantonal a informé A._ par courrier du 25 février 2019 de son intention de révoquer son autorisation d'établissement et de prononcer son renvoi de Suisse. Représenté par un avocat, l'intéressé s'est déterminé et a demandé l'assistance judiciaire (dispense des frais de procédure et désignation d'un défenseur d'office).
2.
Par décision du 22 mai 2019, le Service cantonal a révoqué l'autorisation d'établissement de A._, prononcé son renvoi de Suisse et rejeté sa demande d'assistance judiciaire.
Par arrêt du 4 novembre 2019, le Tribunal cantonal fribourgeois, 1 e Cour administrative (ci-après: le Tribunal cantonal), tout en lui accordant l'assistance judiciaire pour la procédure de recours, a partiellement admis le recours et modifié la décision du 22 mai 2019 du Service cantonal en ce sens qu'il a accordé à A._ l'assistance judiciaire partielle (soit limitée aux frais de procédure) en lien avec la procédure menée devant le Service cantonal. Pour le surplus, il a confirmé la décision du Service cantonal et rejeté le recours. En substance, le Tribunal cantonal a confirmé le bien-fondé de la révocation de l'autorisation d'établissement du recourant. Cette mesure étant conforme au principe de la proportionnalité, la question de savoir si l'autorisation révoquée pouvait être remplacée par une autorisation de séjour ne se posait pas.
Agissant par la voie du recours en matière de droit public devant le Tribunal fédéral, A._ conclut à ce que l'arrêt du 4 novembre 2019 du Tribunal cantonal soit annulé et, partant, à ce que son autorisation d'établissement soit " maintenue et prolongée ". Il demande l'assistance judiciaire.
3.
Il n'a pas été ordonné d'échange d'écritures.
4.
En vertu de l'art. 83 let. c ch. 2 LTF, le recours en matière de droit public est irrecevable contre les décisions en matière de droit des étrangers qui concernent une autorisation à laquelle ni le droit fédéral ni le droit international ne donnent droit. La voie du recours en matière de droit public est partant ouverte contre les décisions révoquant comme en l'espèce une autorisation d'établissement, parce qu'il existe en principe un droit au maintien de cette autorisation (<ref-ruling> consid. 1.2.1 p. 4). L'arrêt attaqué est par ailleurs une décision finale (<ref-law>), rendue en dernière instance cantonale par un tribunal supérieur (art. 86 al. 1 let. d et al. 2 LTF); le recours a été déposé dans les formes prescrites (<ref-law>) et en temps utile (<ref-law>) par le destinataire de l'arrêt attaqué, qui a qualité pour recourir (cf. <ref-law>). Il convient donc d'entrer en matière sur le recours.
5.
Le Tribunal cantonal ayant produit le dossier de la cause conformément à l'<ref-law>, la requête de production formulée par le recourant est sans objet.
6.
Le Tribunal fédéral applique le droit d'office (<ref-law>) et statue sur la base des faits établis par l'autorité précédente (<ref-law>), hormis dans les cas visés à l'<ref-law>. Selon l'<ref-law>, le recours ne peut critiquer les constatations de fait que si les faits ont été établis de façon manifestement inexacte - notion qui correspond à celle d'arbitraire - ou en violation du droit au sens de l'<ref-law> et si la correction du vice est susceptible d'influer sur le sort de la cause (<ref-ruling> consid. 6 p. 358; <ref-ruling> consid. 1.6 p. 377). Le Tribunal fédéral n'entre pas en matière sur des critiques de type appellatoire portant sur l'état de fait ou sur l'appréciation des preuves (<ref-ruling> consid. 2.3 p. 266; <ref-ruling> consid. 10.1 p. 445; <ref-ruling> consid. 5.1 p. 356).
7.
Le recourant ne conteste pas l'arrêt attaqué en tant qu'il lui ne lui a accordé que l'assistance judiciaire partielle durant la procédure devant le Service cantonal.
8.
En vertu de l'art. 62 al. 1 let. b LEI, applicable aux autorisations d'établissement par le renvoi de l'art. 63 al. 1 LEI, l'autorité compétente peut révoquer une autorisation d'établissement lorsque l'étranger a été condamné à une peine privative de liberté de longue durée. Selon la jurisprudence, est de longue durée une peine privative de liberté supérieure à un an, résultant d'un seul jugement pénal, qu'elle ait été prononcée avec sursis ou sans sursis (partiel) (<ref-ruling> consid. 2.1 p. 18). En l'occurrence, le recourant ne conteste pas qu'avec la peine privative de liberté de 46 mois à laquelle il a été condamné le 13 mars 2018, il remplit la condition de révocation de l'art. 62 al. 1 let. b LEI.
9.
Selon l'art. 63 al. 3 LEI en vigueur depuis le 1 er octobre 2016, est illicite toute révocation fondée uniquement sur des infractions pour lesquelles un juge pénal a déjà prononcé une peine ou une mesure mais a renoncé à prononcer une expulsion. L'art. 66a al. 1 du Code pénal suisse (CP; RS 311.0), entré en vigueur à la même date (RO 2016 2329), fixe un catalogue d'infractions (cf. let. a à o), qui oblige le juge pénal à expulser, pour une durée de cinq à quinze ans, l'étranger qui est condamné pour l'une d'elles, quelle que soit la quotité de la peine prononcée, sous réserve des cas de rigueur (<ref-law>; cf. arrêt 2C_1154/2018 du 18 novembre 2019 consid. 2.1.2 destiné à la publication). En vertu de l'interdiction de la rétroactivité posée à l'<ref-law>, l'<ref-law> ne s'applique qu'aux infractions commises après le 1 er octobre 2016 (arrêts 2C_1154/2018 précité, eo loco; 6B_1043/2017 du 14 août 2018 consid. 3.1.2). En l'occurrence, le recourant a été condamné le 13 mars 2018 notamment pour des infractions à l'<ref-law>. Ces infractions font partie du catalogue figurant à l'<ref-law> (cf. let. o). Toutefois, ces infractions ont été commises entre 2014 et février 2016, de sorte que l'<ref-law> n'a pas trouvé application (cf. arrêt attaqué consid. 2.3). Partant, l'art. 63 al. 3 LEI n'entre pas non plus en ligne de compte en l'espèce, comme l'ont également constaté les juges précédents.
10.
Le recourant soutient, en invoquant une violation des art. 96 LEI, 5 al. 2 Cst. et 8 par. 2 CEDH, que la révocation de son autorisation d'établissement est une mesure disproportionnée. Il fait en particulier valoir que les juges précédents n'ont pas suffisamment pris en compte, dans la pesée des intérêts effectuée, la longue durée de son séjour en Suisse et le fait qu'un renvoi en Serbie le plongerait dans une situation d'isolement extrême inacceptable. Il fait aussi valoir que les juges précédents ont admis à tort qu'il existait un risque de récidive.
10.1. Selon l'art. 96 al. 1 LEI, les autorités compétentes tiennent compte, en exerçant leur pouvoir d'appréciation, des intérêts publics, de la situation personnelle de l'étranger, ainsi que de son intégration. L'examen de la proportionnalité de la mesure imposé par l'art. 96 LEI se confond avec celui qui est prévu à l'art. 8 par. 2 CEDH (cf. <ref-ruling> consid. 2.3.2 p. 34; <ref-ruling> consid. 4.3 p. 381). Quant à l'art. 5 al. 2 Cst., il est concrétisé à l'art. 96 LEI, de sorte qu'il n'y a pas lieu de procéder à un examen distinct de la proportionnalité sous cet angle (arrêt 2C_754/2018 du 28 janvier 2019 consid. 6.1).
10.2. La question de la proportionnalité de la révocation d'autorisation de séjour en Suisse doit être tranchée au regard de toutes les circonstances du cas d'espèce. Lorsque la mesure de révocation est prononcée en raison de la commission d'une infraction, les critères déterminants se rapportant notamment à la gravité de l'infraction, à la culpabilité de l'auteur, au temps écoulé depuis l'infraction, au comportement de celui-ci pendant cette période, au degré de son intégration et à la durée de son séjour antérieur, ainsi qu'aux inconvénients qui le menacent, lui et sa famille, en cas de révocation. La peine infligée par le juge pénal est le premier critère à utiliser pour évaluer la gravité de la faute et pour procéder à la pesée des intérêts. Lors d'infractions pénales graves, il existe, sous réserve de liens personnels ou familiaux prépondérants, un intérêt public digne de protection à mettre fin au séjour d'un étranger, afin de préserver l'ordre public et de prévenir de nouveaux actes délictueux (<ref-ruling> consid. 2.2.1 p. 19; <ref-ruling> consid. 2.3.2 p. 31; <ref-ruling> consid. 4.3 p. 381; <ref-ruling> consid. 4.2 p. 23). La durée de séjour en Suisse d'un étranger constitue un autre critère très important. Plus cette durée est longue, plus les conditions pour prononcer l'expulsion administrative doivent être appréciées restrictivement (cf. ATF <ref-ruling> consid. 4.4 et 4.5 p. 382 s.). La révocation de l'autorisation d'établissement d'un étranger qui séjourne depuis longtemps en Suisse doit se faire avec une retenue particulière, mais n'est pas exclue en cas d'infractions graves ou répétées, en particulier en cas de violence, de délits sexuels, de graves infractions à la loi fédérale sur les stupéfiants, même dans le cas d'un étranger né en Suisse et qui y a passé l'entier de sa vie. On tiendra alors particulièrement compte de l'intensité des liens de l'étranger avec la Suisse et des difficultés de réintégration dans son pays d'origine (<ref-ruling> consid. 2.2.1 p. 19 ss; <ref-ruling> consid. 2.3.1 p. 33 ss; <ref-ruling> consid. 2.4 p. 149).
11.
Il ressort de l'arrêt entrepris que le Tribunal cantonal a pris en compte, en faveur du recourant, son long séjour en Suisse, où sa famille proche (parents et frères et soeurs) vit, ainsi que le fait qu'un renvoi en Serbie ne serait pas aisé et lui demanderait des efforts conséquents pour s'intégrer. Les juges cantonaux ont toutefois contrebalancé ces éléments avec la gravité des infractions commises et le comportement récidiviste du recourant. Le fait qu'il ait reconnu les infractions commises et bénéficié de la procédure pénale simplifiée au cours de la procédure qui a conduit à sa dernière condamnation ne permettait pas de minimiser pas la gravité de ses actes ni ne témoignait d'un quelconque respect de l'ordre juridique. Le fait que le recourant vive actuellement prétendument mal l'exécution de sa peine et qu'il se comporte bien en prison n'était pas suffisant pour permettre de conclure à l'absence d'un risque de récidive, pas plus le fait qu'il bénéficie d'une promesse d'embauche à sa sortie de prison et qu'il puisse vivre au domicile familial. Enfin, le recourant ne pouvait pas se prévaloir de liens sociaux ou professionnels spécialement intenses avec la Suisse, où il avait en outre accumulé une partie importante de ses dettes alors qu'il n'était pas en détention.
12.
Quoi qu'en dise le recourant, la pesée des intérêts effectuée par le Tribunal cantonal n'est pas critiquable.
Il ressort d'abord des faits constatés que le recourant a été condamné, le 13 mars 2018, à une peine privative de liberté de 46 mois pour avoir agi comme revendeur au sein d'une bande qui s'adonnait à un grave trafic de stupéfiants comprenant de la cocaïne, de l'héroïne et de la MDMA. La gravité de la faute du recourant se reflète par la quotité de la peine et par le fait que les actes qu'il a commis sont constitutifs de crimes selon l'<ref-law> (grande mise en danger de la santé), et selon l'<ref-law> (commis en bande). Il existe donc un intérêt public digne de protection à mettre fin au séjour du recourant afin de préserver l'ordre public et de prévenir de nouveaux actes délictueux. Le Tribunal cantonal a dès lors correctement appliqué la jurisprudence précitée en considérant que le comportement fautif du recourant était un élément primordial pour la pesée des intérêts. Il n'y a dès lors pas lieu d'examiner le grief du recourant en tant qu'il reproche au Tribunal cantonal d'avoir souligné, en citant l'<ref-ruling> consid. 4.3, qu'en cas de peine privative de liberté de deux ans, l'intérêt public à l'éloignement prime en général toute considération liée à la proportionnalité. A cela s'ajoute le fait qu'hormis des infractions à la LStup, le recourant a aussi notamment commis des lésions corporelles simples, une agression et des infractions à la LCR, dont une conduite d'un véhicule automobile en état d'incapacité, ce qui dénote une absence de considération pour la santé et l'intégrité physique d'autrui. Le recourant a en outre continué à exercer une activité délictuelle malgré le sursis partiel qui lui a été accordé en décembre 2014, lors de sa quatrième condamnation, et l'avertissement qu'il a reçu du Service cantonal en février 2015, ce qui dénote un mépris de l'ordre juridique et des autorités. Ce mépris s'illustre aussi par le fait qu'il a également été condamné pour violence et menace contre les autorités et pour avoir induit la justice en erreur (cf. les condamnations des 30 juin 2010 et 9 décembre 2014).
Ensuite, on ne peut pas reprocher aux juges précédents d'avoir estimé que les circonstances ne permettaient pas de conclure à une absence de risque de récidive. L'activité délictuelle du recourant n'a cessé ni après les premières condamnations pénales qui lui ont été infligées alors qu'il était mineur, ni à la suite de son accession à la majorité. Elle n'a pas non plus cessé après l'avertissement que lui a signifié le Service cantonal en février 2015; au contraire, c'est à ce moment-là que le recourant a commis les infractions les plus graves, qui ont conduit à sa dernière condamnation. En lien avec cette condamnation, le fait que le recourant ait reconnu ses actes et ait ainsi bénéficié de la procédure pénale simplifiée n'est pas suffisant pour retenir une absence de risque de récidive, pas plus le fait qu'il vive, selon les faits constatés, prétendument mal son incarcération. En outre, un comportement correct en prison n'est pas relevant, une telle attitude étant attendue de tout délinquant (cf. <ref-ruling> consid. 121 consid. 5.5.2 p. 128). De même, on ne peut pas reprocher aux juges précédents de ne pas avoir fait grand cas du fait qu'à sa sortie de prison, le recourant serait réengagé par l'entreprise de son frère et vivrait au domicile familial, puisque, comme ils l'ont relevé, ces circonstances ne l'avaient pas éloigné de la délinquance par le passé. S'agissant du risque de récidive, le recourant se limite à opposer de manière appellatoire sa propre appréciation à celle des juges précédents, ce dont le Tribunal fédéral ne tient pas compte (cf. supra consid. 6).
L'intérêt du recourant à rester en Suisse résulte d'abord du fait qu'il vit en Suisse depuis qu'il a trois ans et demi et que sa famille proche, dont ses parents et ses frères et soeurs, y réside aussi. Le recourant n'a toutefois pas d'enfant et il s'est séparé (ou a divorcé) en avril 2018 de la ressortissante macédonienne qu'il avait épousée en février de la même année. L'arrêt attaqué relève en outre qu'il ne se prévaut pas de liens sociaux spécialement intenses avec la Suisse. Sous l'angle professionnel, le recourant ne peut pas se targuer non plus d'une forte intégration, puisqu'il n'a pas terminé l'apprentissage de monteur en chauffage qu'il avait commencé et qu'il n'a travaillé que durant sept mois entre 2009 à 2012, en enchaînant divers emplois, avant d'être engagé dans l'entreprise de son frère en mars 2013. Du point de vue financier, sa situation est par ailleurs obérée, puisqu'il faisait l'objet, au 23 novembre 2018, de poursuites pour 33'138 fr. 98, qu'il a accumulé des actes de défaut de biens pour 81'315 fr.05 et que, selon les faits constatés, une grande partie de ces dettes a été réalisée alors que le recourant n'était pas en détention. Malgré l'intégration faible du recourant en Suisse, il n'est pas douteux qu'un retour en Serbie représentera un défi et lui demandera des efforts d'adaptation conséquents, comme l'ont aussi reconnu les juges précédents. Le recourant est toutefois en bonne santé et a un âge qui lui permettra de s'habituer à un nouvel environnement, où il pourra profiter de l'expérience professionnelle acquise en Suisse. Albanais de Serbie, il maîtrise la langue albanaise à tout le moins oralement et pourra retourner dans sa localité d'origine, majoritairement albanophone. L'arrêt attaqué constate en outre qu'il semble avoir des parents au pays, chez qui il séjournait lors de vacances d'été. Enfin, le lien avec sa famille en Suisse pourra en outre être maintenu, nonobstant la distance et la séparation.
Compte tenu de l'ensemble des circonstances, en particulier de la gravité et de la multiplicité des infractions commises, de l'importance de certains des biens juridiques compromis, du risque de récidive, de l'absence d'intégration réussie et de la possibilité de s'intégrer en Serbie, il n'apparaît pas qu'en faisant primer l'intérêt public à éloigner le recourant sur l'intérêt privé de celui-ci à pouvoir vivre en Suisse, le Tribunal cantonal a méconnu les art. 96 LEI, 5 al. 2 Cst. et 8 par. 2 CEDH. Bien que la révocation de l'autorisation d'établissement d'un étranger qui a passé l'essentiel de sa vie en Suisse présente une mesure sévère, l'appréciation des autorités cantonales est dans les limites prévues par le droit fédéral et par l'art. 8 CEDH.
13.
Ce qui précède conduit au rejet du recours en matière de droit public. Le recours étant d'emblée dénué de chances de succès, la demande d'assistance judiciaire doit être rejetée (<ref-law>). Succombant, le recourant doit supporter les frais judiciaires (<ref-law>). Il n'est pas alloué de dépens (art. 68 al. 1 et 3 LTF).


Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'000 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué au mandataire du recourant, au Service de la population et des migrants du canton de Fribourg, au Tribunal cantonal de l'Etat de Fribourg, Ie Cour administrative, et au Secrétariat d'Etat aux migrations.
Lausanne, le 22 janvier 2020
Au nom de la IIe Cour de droit public
du Tribunal fédéral suisse
Le Président : Seiler
La Greffière : Vuadens