Android中的拦截器

Android中的拦截器,android,Android,我有一个Android应用程序,每次执行调用web服务的操作时都需要检查身份验证令牌,因此我必须在所有活动中包含检查代码片段。我想问一下Android平台中是否存在拦截器,如果存在,请分享将拦截器应用于我的代码的最佳实践?谢谢。不建议android使用运行时反射,因此您不应该使用任何提供运行时拦截HTTP请求的库。您可以编写一个简单的HTTP请求实用程序方法,并通过该方法路由所有HTTP请求 public static void makePostRequest(String url, Obje

我有一个Android应用程序,每次执行调用web服务的操作时都需要检查身份验证令牌,因此我必须在所有活动中包含检查代码片段。我想问一下Android平台中是否存在拦截器,如果存在,请分享将拦截器应用于我的代码的最佳实践?谢谢。

不建议android使用运行时反射,因此您不应该使用任何提供运行时拦截HTTP请求的库。您可以编写一个简单的HTTP请求实用程序方法,并通过该方法路由所有HTTP请求

 public static void makePostRequest(String url, Object body, Context context, AsyncHttpResponseHandler handler) { // here you can add your authentication token to header}

我看到您希望避免多重身份验证检查。所以,考虑创建一个自定义类,该类将检查身份验证令牌,然后在所有活动中扩展该类。例如:

public abstract class MyActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // Your authentication code goes here
    }
}

public class MainActivity extends MyActivity {
    // Your concrete class
}

这样,您就可以忘记将身份验证代码放在任何地方。

您可以创建唯一的方法,并将侦听器代码放在其中,然后在需要时调用此方法。您不必每次在活动中都重新编码谢谢,这显然是正确的答案。我想找到一个拦截器,但它似乎在Android中不受支持。谢谢,我已经考虑过这个解决方案。因为Android不支持你所说的拦截器,所以我认为这是最好的方法。如果我这样做,即使我不打电话给WS,应用程序仍然会检查身份验证