Tefa Tefa - 1 month ago 11
Android Question

What is (D/NSD: curPkgName is not in list) ?

I am working on new project when I enter to RegisterActivity the logCat printing

11-07 20:12:09.305 26674-26674/com.rosheta D/NSD: curPkgName is not in list


too much and not stop printing it.

what is this? is this is an error? could this lot of logs printing reduce the performance of app?

here is my RegisterActivity

package com.rosheta.activities;

import android.app.Activity;
import android.os.Bundle;
import android.support.v7.widget.AppCompatImageButton;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import com.rosheta.R;
import com.rosheta.api.Api;
import com.rosheta.api.ApiHelper;
import com.rosheta.api.response.UsernameResponse;

import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;

/**
* Created by Tefa on 07/11/2016.
*/

public class Reg extends Activity implements View.OnClickListener {


EditText fName, lName, username, email, password, confirmPassword, phone;
Button signUp;
TextView login;
AppCompatImageButton checkUsername;
Api api;
private static final String TAG = Reg.class.getSimpleName();

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
initializeViewItems();
}

private void initializeViewItems() {
fName = (EditText) findViewById(R.id.act_register_et_firstName);
lName = (EditText) findViewById(R.id.act_register_et_lastName);
username = (EditText) findViewById(R.id.act_register_et_username);
email = (EditText) findViewById(R.id.act_register_et_email);
password = (EditText) findViewById(R.id.act_register_et_password);
confirmPassword = (EditText) findViewById(R.id.act_register_et_confirm_password);
phone = (EditText) findViewById(R.id.act_register_et_phone);
signUp = (Button) findViewById(R.id.act_register_b_signup);
signUp.setOnClickListener(this);
login = (TextView) findViewById(R.id.act_register_tv_login);
login.setOnClickListener(this);
checkUsername = (AppCompatImageButton) findViewById(R.id.act_register_ib_check_username);
checkUsername.setOnClickListener(this);
}

@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.act_register_b_signup:
attemptLogin();
break;
case R.id.act_register_ib_check_username:
String inputUsername = username.getText().toString();
if (TextUtils.isEmpty(inputUsername)) {
username.setError("Username can not be blank");
return;
} else {
checkUsernameValidity(inputUsername);
}
break;
}
}

private void checkUsernameValidity(String inputUsername) {
Log.d(TAG,"checkUsernameValidity");
try {
ApiHelper.base_url = getString(R.string.base_url);
api = ApiHelper.getClient().create(Api.class);
api.checkUsername(inputUsername).enqueue(new Callback<UsernameResponse>() {
@Override
public void onResponse(Call<UsernameResponse> call, Response<UsernameResponse> response) {
if (response.code() == 200) {
Log.d(TAG, "response = 200");
UsernameResponse uResponse = response.body();
if (uResponse.getCode() == 20) {
checkUsername.setImageResource(R.drawable.ic_accepted_username);
} else if (uResponse.getCode() == 3) {
checkUsername.setImageResource(R.drawable.ic_invalid_username);
username.setError(uResponse.getErrorMessage());
}
} else {
Log.e(TAG, "response != 200");
if (!TextUtils.isEmpty(response.message())) {
Log.e(TAG, response.message());
}
}
}

@Override
public void onFailure(Call<UsernameResponse> call, Throwable t) {
Log.e(TAG, "fail");
t.printStackTrace();
}
});
}catch (Exception e){
Log.e(TAG,"Exceptio");
e.printStackTrace();
}
}

private void attemptLogin() {
String firstName = fName.getText().toString();
String lastName = lName.getText().toString();
String inputUsername = username.getText().toString();
String inputEmail = email.getText().toString();
String inputPass = password.getText().toString();
String inputCPass = confirmPassword.getText().toString();
String inputPhone = phone.getText().toString();
if (TextUtils.isEmpty(firstName)) {
fName.setError("First name can not be blank");
return;
}
if (TextUtils.isEmpty(lastName)) {
lName.setError("Last name can not be blank");
return;
}
if (TextUtils.isEmpty(inputUsername)) {
username.setError("Email can not be blank");
return;
}
if (TextUtils.isEmpty(inputEmail)) {
email.setError("Email can not be blank");
return;
}
if (TextUtils.isEmpty(inputPass)) {
password.setError("Password can not be blank");
return;
}
if (TextUtils.isEmpty(inputCPass)) {
confirmPassword.setError("Please confirm your password");
return;
}
if (inputPass.equals(inputCPass)) {
password.setError("Passwords don't match");
return;
}
//TODO handle phone number
//TODO register request
}
}


and activity_register.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_register"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/backgroundColor"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.rosheta.activities.RegisterActivity">

<ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true">

<LinearLayout
android:id="@+id/act_register_main_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">

<LinearLayout
android:id="@+id/ll_names_et"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:orientation="horizontal"
android:weightSum="1">

<EditText
android:id="@+id/act_register_et_firstName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:hint="First name"
android:inputType="text" />

<EditText
android:id="@+id/act_register_et_lastName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:hint="Last name"
android:inputType="text" />

</LinearLayout>

<EditText
android:id="@+id/act_register_et_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:hint="E-mail"
android:inputType="textEmailAddress" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_margin="5dp"
>

<EditText
android:id="@+id/act_register_et_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:hint="Username"
android:inputType="text" />

<android.support.v7.widget.AppCompatImageButton
android:id="@+id/act_register_ib_check_username"
android:layout_width="35dp"
android:layout_height="match_parent"
android:src="@drawable/ic_refresh_username"
/>

</LinearLayout>


<EditText
android:id="@+id/act_register_et_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:hint="Password"
android:inputType="textPassword" />

<EditText
android:id="@+id/act_register_et_confirm_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:hint="Confirm Password"
android:inputType="textPassword" />

<EditText
android:id="@+id/act_register_et_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:hint="Phone number"
android:inputType="phone" />

<Button
android:id="@+id/act_register_b_signup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:text="Sign up" />

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">

<TextView
android:id="@+id/tv_have_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_margin="5dp"
android:text="@string/have_account_text" />

<TextView
android:id="@+id/act_register_tv_login"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/tv_have_account"
android:layout_toEndOf="@+id/tv_have_account"
android:layout_toRightOf="@+id/tv_have_account"
android:text="login"
tools:textColor="?android:attr/textColorLink" />

</RelativeLayout>
</LinearLayout>
</ScrollView>



Answer

Then it is not bug in your code. Huawei phones shows this log and they have not fixed it. So ignore it.