public class MyClass extends RelativeLayout {
private RectF mBounds = new RectF(0, 0, 0, 0);
private Paint mPaint = new Paint();
public MyClass(final Context context, final AttributeSet attrs, final int defStyle) {
super(context, attrs, defStyle);
setWillNotDraw(false); //разрешаем рисовать в ViewGroup
mPaint.setColor(Color.RED);
mPaint.setStyle(Paint.Style.FILL);
mPaint.setAntiAlias(true);
}
@Override
protected void onSizeChanged(final int width, final int height, final int oldw,
final int oldh) {
mBounds.left = 0;
mBounds.top = 0;
mBounds.right = width;
mBounds.bottom = height;
}
@Override
public void onDraw(final Canvas canvas) {
super.onDraw(canvas);
canvas.drawOval(mBounds, mPaint);
}
}
- //Получаем необходимы cookie
- HttpGet get = new HttpGet(http://vk.com/login.php?email=%s&pass=%s);
- HttpResponse response = mHttpClient.execute(get);
- if (response.getStatusLine().getStatusCode() != 200) {
- throw new UpdateException("Failed to obtain token");
- }
- //Делаем запрос на авторизацию
- get = new HttpGet("api.vk.com/oauth/authorize?client_id=_&redirect_uri=http%3A%2F%2Fapi.vk.com%2Fblank.html&response_type=code&scope=audio,offline");
- response = mHttpClient.execute(get);
- if (response.getStatusLine().getStatusCode() != 200) {
- throw new UpdateException("Failed to obtain token");
- }
- //Получаем последнюю ссылку на которую нас перенаправили
- final String lastLink = redirectHandler.getLastLocationURI().toString();
- if (lastLink.contains("oauth.vk.com/oauth/authorize")) {
- throw new VkApiException("Failed to login!");
- } else if (lastLink.contains(oauth.vk.com/authorize)) {
- //Попадаем сюда, если у приложения нет подтвержденных разрешений
- final String approveLink = getApproveLink(EntityUtils
- .toString(response.getEntity()));
- get = new HttpGet(approveLink);
- response = mHttpClient.execute(get);
- if (response.getStatusLine().getStatusCode() != 200) {
- throw new UpdateException("Failed to obtain token");
- }
- }
- //Если всё хорошо, то получаем из последнего url код
- final String code = extractCode(redirectHandler.getLastLocationURI().toString());
- //Получаем токен с помощью библиотеки scribe
- final Verifier verifier = new Verifier(code);
- final Token token = mAuthSevice.getAccessToken(EMPTY_TOKEN, verifier);