无法通过 198.168.x in window 8.1 访问 jax-rs 中的服务器
unable to access server in jax-rs through 198.168.x in window 8.1
大家好,我的 android 应用程序有问题。我在 ubuntu 16.0.4 中安装了 android 应用程序,它在我的工作电脑上运行良好,但是当我在 window 8.1 中导入我的应用程序时。从登录它不起作用。
首先,我的 android studio 在 window 8.1 中无法识别我的手机,所以我安装了 pdaNet,它工作正常。
当我调试我的代码时
已建立的连接被主机中的软件中止
ConnectivityManager return 既正确又错误。它从未在 linux
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isAvailable()
&& networkInfo.isConnected()) {
return true;
} else {
return false;
}
} else {
return false;
}
我不知道 window 8.1 有什么问题,但我在
上将手机与笔记本电脑连接,共享相同的 wifi 和网络服务 运行
http://192.168.0.102:8080/payroll-services-ws/api/secured/message
并且当我检查 Postman 时,它工作正常..
这是我的登录密码
public class Login extends AppCompatActivity {
private ProgressBar progressBar;
List<MyTask> myTasksList;
private static final String RESTLOGIN="http://192.168.0.102:8080/payroll-services-ws/api/secured/message";
private EditText usernameEditText;
private EditText passwordEdittext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
progressBar =(ProgressBar)findViewById(R.id.progressBarLogin);
progressBar.setVisibility(View.INVISIBLE);
myTasksList = new ArrayList<>();
usernameEditText = (EditText)findViewById(R.id.etUsername);
passwordEdittext = (EditText)findViewById(R.id.etPass);
}
public void onBtnClick(View view){
Button buttonLogin = (Button)findViewById(R.id.btnSingIn);
if (view.getId()==R.id.btnSingIn){
//updateDisplay();
if (isOnline()){
requestData(RESTLOGIN);
}
else{
Toast.makeText(Login.this, "Not Connect WIth Network", Toast.LENGTH_LONG).show();
}
}
else if (view.getId()==R.id.btnSignUp){
Intent intent = new Intent(Login.this,Register.class);
startActivity(intent);
}
}
protected boolean isOnline(){
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isAvailable()
&& networkInfo.isConnected()) {
return true;
} else {
return false;
}
} else {
return false;
}
}
private void requestData(String uri){
MyTask myTask = new MyTask();
myTask.execute(uri,usernameEditText.getText().toString(),passwordEdittext.getText().toString());
}
public void updateDisplay(){
Toast.makeText(Login.this, "Login Successfull", Toast.LENGTH_SHORT).show();
Intent mainActivity = new Intent(Login.this,Home.class);
mainActivity.putExtra("username",usernameEditText.getText().toString());
mainActivity.putExtra("password",passwordEdittext.getText().toString());
startActivity(mainActivity);
}
//param progress and result
private class MyTask extends AsyncTask<String,String,String>{
@Override
protected void onPreExecute() {
if (myTasksList.size()==0){
progressBar.setVisibility(View.VISIBLE);
}
myTasksList.add(this);
}
@Override
protected String doInBackground(String... params) {
//param 0 which is come from requestData
String content = HttpManager.getData(params[0],params[1],params[2]);
return content;
}
//content of dobackground pass to the dopostexcute
@Override
protected void onPostExecute(String result) {
myTasksList.remove(this);
if (myTasksList.size()==0){
progressBar.setVisibility(View.INVISIBLE);
}
if (result==null){
Toast.makeText(Login.this,"Sorry Username or password doesnot match",Toast.LENGTH_LONG).show();
return;
}
//list of object from content
//from json
updateDisplay();
}
}
}
我只能通过 localhost:8080
在邮递员中访问
问题是由于 window 8.1 的防火墙阻止了任何 public IP 地址,所以编辑防火墙设置 esp TCP 80 端口解决了我的问题。
大家好,我的 android 应用程序有问题。我在 ubuntu 16.0.4 中安装了 android 应用程序,它在我的工作电脑上运行良好,但是当我在 window 8.1 中导入我的应用程序时。从登录它不起作用。 首先,我的 android studio 在 window 8.1 中无法识别我的手机,所以我安装了 pdaNet,它工作正常。 当我调试我的代码时 已建立的连接被主机中的软件中止 ConnectivityManager return 既正确又错误。它从未在 linux
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isAvailable()
&& networkInfo.isConnected()) {
return true;
} else {
return false;
}
} else {
return false;
}
我不知道 window 8.1 有什么问题,但我在
上将手机与笔记本电脑连接,共享相同的 wifi 和网络服务 运行http://192.168.0.102:8080/payroll-services-ws/api/secured/message
并且当我检查 Postman 时,它工作正常..
这是我的登录密码
public class Login extends AppCompatActivity {
private ProgressBar progressBar;
List<MyTask> myTasksList;
private static final String RESTLOGIN="http://192.168.0.102:8080/payroll-services-ws/api/secured/message";
private EditText usernameEditText;
private EditText passwordEdittext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
progressBar =(ProgressBar)findViewById(R.id.progressBarLogin);
progressBar.setVisibility(View.INVISIBLE);
myTasksList = new ArrayList<>();
usernameEditText = (EditText)findViewById(R.id.etUsername);
passwordEdittext = (EditText)findViewById(R.id.etPass);
}
public void onBtnClick(View view){
Button buttonLogin = (Button)findViewById(R.id.btnSingIn);
if (view.getId()==R.id.btnSingIn){
//updateDisplay();
if (isOnline()){
requestData(RESTLOGIN);
}
else{
Toast.makeText(Login.this, "Not Connect WIth Network", Toast.LENGTH_LONG).show();
}
}
else if (view.getId()==R.id.btnSignUp){
Intent intent = new Intent(Login.this,Register.class);
startActivity(intent);
}
}
protected boolean isOnline(){
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivityManager != null) {
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isAvailable()
&& networkInfo.isConnected()) {
return true;
} else {
return false;
}
} else {
return false;
}
}
private void requestData(String uri){
MyTask myTask = new MyTask();
myTask.execute(uri,usernameEditText.getText().toString(),passwordEdittext.getText().toString());
}
public void updateDisplay(){
Toast.makeText(Login.this, "Login Successfull", Toast.LENGTH_SHORT).show();
Intent mainActivity = new Intent(Login.this,Home.class);
mainActivity.putExtra("username",usernameEditText.getText().toString());
mainActivity.putExtra("password",passwordEdittext.getText().toString());
startActivity(mainActivity);
}
//param progress and result
private class MyTask extends AsyncTask<String,String,String>{
@Override
protected void onPreExecute() {
if (myTasksList.size()==0){
progressBar.setVisibility(View.VISIBLE);
}
myTasksList.add(this);
}
@Override
protected String doInBackground(String... params) {
//param 0 which is come from requestData
String content = HttpManager.getData(params[0],params[1],params[2]);
return content;
}
//content of dobackground pass to the dopostexcute
@Override
protected void onPostExecute(String result) {
myTasksList.remove(this);
if (myTasksList.size()==0){
progressBar.setVisibility(View.INVISIBLE);
}
if (result==null){
Toast.makeText(Login.this,"Sorry Username or password doesnot match",Toast.LENGTH_LONG).show();
return;
}
//list of object from content
//from json
updateDisplay();
}
}
}
我只能通过 localhost:8080
在邮递员中访问问题是由于 window 8.1 的防火墙阻止了任何 public IP 地址,所以编辑防火墙设置 esp TCP 80 端口解决了我的问题。