См. здесь: http://developer.android.com/guide/developing/tools/zipalign.html
Внимание: вы должны использовать zipalign на одном из двух конкретных точек в процессе создания приложений, в зависимости от того, какой инструмент для подписи приложения вы используете:
Если вы используете apksigner, zipalign должен выполняться только до того, как файл APK был подписан. Если вы подписываете APK с помощью apksigner и вносите дальнейшие изменения в APK, его подпись недействительна.
Если вы используете jarsigner, zipalign должен выполняться только после того, как файл APK был подписан.
Структура JSON - это объект с одним элементом с именем «access_token» - это не просто строка. Его можно десериализовать в соответствующую структуру данных Java, такую как Map, следующим образом.
import java.util.Map;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
public class GsonFoo
{
public static void main(String[] args)
{
String jsonInput = "{\"access_token\": \"abcdefgh\"}";
Map<String, String> map = new Gson().fromJson(jsonInput, new TypeToken<Map<String, String>>() {}.getType());
String key = map.get("access_token");
System.out.println(key);
}
}
Другим распространенным подходом является использование более конкретной структуры данных Java, которая соответствует JSON. Например:
import com.google.gson.Gson;
import com.google.gson.annotations.SerializedName;
public class GsonFoo
{
public static void main(String[] args)
{
String jsonInput = "{\"access_token\": \"abcdefgh\"}";
Response response = new Gson().fromJson(jsonInput, Response.class);
System.out.println(response.key);
}
}
class Response
{
@SerializedName("access_token")
String key;
}
Еще одна возможность «низкого уровня» с использованием Gson JsonParser:
package stackoverflow.questions.q11571412;
import com.google.gson.*;
public class GsonFooWithParser
{
public static void main(String[] args)
{
String jsonInput = "{\"access_token\": \"abcdefgh\"}";
JsonElement je = new JsonParser().parse(jsonInput);
String value = je.getAsJsonObject().get("access_token").getAsString();
System.out.println(value);
}
}
Если однажды вы напишите собственный десериализатор, JsonElement станет вашим лучшим другом.