¿Puedo crear el objeto de una actividad en otra clase?

he definido una función en mainactivity ahora quiero acceder con otra clase en mi aplicación.He creado un objeto de la mainactivity mediante el uso de ese objeto que he llamado a la función.No está mostrando ningún error, pero no se ejecuta cada vez que i tratar de ejecutar la aplicación se bloquea? cualquier solución

La actividad A debe tener una variable

static ActivityA activityA; 

En el estado onCreate:

 activityA = this; 

y agrega este método:

 public static ActivityA getInstance(){ return activityA; } 

En la actividad B, llama

 ActivityA.getInstance().myFunction(); //call myFunction using activityA 

No puede simplemente crear objetos de Actividades usando:

 MyActivity activity = new MyActivity(); 

como lo harías con las clases normales de Java. Todas las Actividades en Android deben pasar por el ciclo de vida de la Actividad para que tengan un contexto válido adjunto a ellas.

Al tratar una Actividad como una clase Java normal, terminas con un contexto nulo. Como la mayoría de los métodos de una actividad se invocan en su contexto, obtendrá una excepción de puntero nulo, que es la razón por la que su aplicación falla.

En su lugar, mueva todos los métodos que necesitan ser llamados desde otras clases a una clase de Utilidad que acepte un contexto válido en su constructor, y luego use ese contexto en los métodos para hacer el trabajo.