Adding new fields using hook_field_schema_alter()
You would need to call the field_create_instance() function passing a new array.

 $instance = array(
    'field_name' =&gt; 'field_my_custom', // ** This already exists, or check with field_info_field()
    'entity_type' =&gt; 'node',
    'label' =&gt; 'a label', 
    'bundle' =&gt; $content_type, 
    'widget' =&gt; array(), // if you're not sure about your widget settings, take a glimpse at an existing field instance using debug(field_info_instance(...));
);
field_create_instance($instance);


More links to read and better understand the above functions:

https://api.drupal.org/api/drupal/modules%21field%21field.info.inc/function/field_info_field/7
https://api.drupal.org/api/drupal/modules%21field%21field.info.inc/function/field_info_instance/7
https://api.drupal.org/api/drupal/modules%21field%21field.crud.inc/function/field_create_instance/7

Also, take a look at the Examples for Developers module, node example and field example.