Why the AddForce fonction works differently on different mobiles ?

I have a basketball throwing game and each mobile i test it on, it acts differently. I am using a fonction that i wrote to make the ball jump by adding a force to it’s ridgidbody without using the Time.deltaTime or Time.FixedDeltaTime and i am calling that fonction within the FixedUpdate fonction, yet this problem happens…any ideas ?
p.s: i tried it with the impulse force mode and without.

 public void jump(Vector3 Direction)
    {
        //adds force to rigidbody
        GetComponent<Rigidbody2D>().velocity = new Vector2(0, 0);
        GetComponent<Rigidbody2D>().constraints = RigidbodyConstraints2D.None;
        Vector2 direction = new Vector2((Direction.x) / 10, 100).normalized;

        //force is a pre-determened variable that i use for diiferent kind of balls
        GetComponent<Rigidbody2D>().AddForce(direction * force, ForceMode2D.Impulse);

    }

It probably adds different forces because you are adding force bases on the fps rate.To fix it you have to multiply your force by the deltaTime(frames in one second / 1) so :
GetComponent().AddForce(direction * force * Time.deltaTime, ForceMode2D.Impulse);