2016-06-28 6 views
-4
`enter code here` 06-28 11:13:00.586 13226-14416/com.example.android_javed.plp_calculator2 D/HDFC: GCM ID: 
    06-28 11:13:00.726 13226-14416/com.example.android_javed.plp_calculator2 I/art: Verification error in c.a.a.j.f c.a.a.f.b.a.I() 
    06-28 11:13:00.726 13226-14416/com.example.android_javed.plp_calculator2 I/art: 'this' argument 'Unresolved And Uninitialized Reference: org.apache.http.protocol.ImmutableHttpProcessor Allocation PC: 45' not instance of 'Unresolved Reference: org.apache.http.protocol.ImmutableHttpProcessor' 
    06-28 11:13:00.726 13226-14416/com.example.android_javed.plp_calculator2 I/art: c.a.a.j.f c.a.a.f.b.a.I() failed to verify: register v4 has type Precise Reference: c.a.a.p[] but expected Reference: org.apache.http.HttpRequestInterceptor[] 
    06-28 11:13:00.736 13226-14416/com.example.android_javed.plp_calculator2 E/art: Verification failed on class c.a.a.f.b.a in /data/app/com.example.android_javed.plp_calculator2-2/base.apk because: Verifier rejected class c.a.a.f.b.a due to bad method c.a.a.j.f c.a.a.f.b.a.I() 
    06-28 11:13:00.736 13226-14416/com.example.android_javed.plp_calculator2 E/art: Rejecting class c.a.a.f.b.i that attempts to sub-class erroneous class c.a.a.f.b.a in /data/app/com.example.android_javed.plp_calculator2-2/base.apk 
    06-28 11:13:00.736 13226-14416/com.example.android_javed.plp_calculator2 E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #4 
                           Process: com.example.android_javed.plp_calculator2, PID: 13226 
                           java.lang.RuntimeException: An error occured while executing doInBackground() 
                            at android.os.AsyncTask$3.done(AsyncTask.java:300) 
                            at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) 
                            at java.util.concurrent.FutureTask.setException(FutureTask.java:222) 
                            at java.util.concurrent.FutureTask.run(FutureTask.java:242) 
                            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) 
                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
                            at java.lang.Thread.run(Thread.java:818) 
                           Caused by: java.lang.VerifyError: Rejecting class c.a.a.f.b.i that attempts to sub-class erroneous class c.a.a.f.b.a (declaration of 'c.a.a.f.b.i' appears in /data/app/com.example.android_javed.plp_calculator2-2/base.apk) 
                            at d.f.a(Unknown Source) 
                            at com.example.android_javed.plp_calculator2.fm.a(Unknown Source) 
                            at com.example.android_javed.plp_calculator2.fm.doInBackground(Unknown Source) 
                            at android.os.AsyncTask$2.call(AsyncTask.java:288) 
                            at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
                            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)  
                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)  
                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)  
                            at java.lang.Thread.run(Thread.java:818)  
                           Caused by: java.lang.VerifyError: Verifier rejected class c.a.a.f.b.a due to bad method c.a.a.j.f c.a.a.f.b.a.I() (declaration of 'c.a.a.f.b.a' appears in /data/app/com.example.android_javed.plp_calculator2-2/base.apk) 
                            at d.f.a(Unknown Source)  
                            at com.example.android_javed.plp_calculator2.fm.a(Unknown Source)  
                            at com.example.android_javed.plp_calculator2.fm.doInBackground(Unknown Source)  
                            at android.os.AsyncTask$2.call(AsyncTask.java:288)  
                            at java.util.concurrent.FutureTask.run(FutureTask.java:237)  
                            at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)  
                            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)  
                            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)  
                            at java.lang.Thread.run(Thread.java:818)  
    06-28 11:13:04.246 13226-13226/com.example.android_javed.plp_calculator2 V/GCMBroadcastReceiver: onReceive: com.google.android.c2dm.intent.REGISTRATION 
    06-28 11:13:04.246 13226-13226/com.example.android_javed.plp_calculator2 V/GCMBroadcastReceiver: GCM IntentService class: com.example.android_javed.plp_calculator2.GCMIntentService 
    06-28 11:13:04.256 13226-13226/com.example.android_javed.plp_calculator2 V/GCMBaseIntentService: Acquiring wakelock 
    06-28 11:13:04.266 13226-13226/com.example.android_javed.plp_calculator2 V/GCMBaseIntentService: Intent service name: GCMIntentService-543353393141 -1 
    06-28 11:13:04.266 13226-14630/com.example.android_javed.plp_calculator2 E/GCMRegistrar: internal error: retry receiver class not set yet 
    06-28 11:13:04.266 13226-14630/com.example.android_javed.plp_calculator2 V/GCMRegistrar: Registering receiver 
    06-28 11:13:04.276 13226-14630/com.example.android_javed.plp_calculator2 D/GCMBaseIntentService: handleRegistration: registrationId = null, error = SERVICE_NOT_AVAILABLE, unregistered = null 
    06-28 11:13:04.276 13226-14630/com.example.android_javed.plp_calculator2 D/GCMBaseIntentService: Registration error: SERVICE_NOT_AVAILABLE 
    06-28 11:13:04.276 13226-14630/com.example.android_javed.plp_calculator2 D/GCMBaseIntentService: Scheduling registration retry, backoff = 3231 (3000) 
    06-28 11:13:04.306 13226-14630/com.example.android_javed.plp_calculator2 V/GCMBaseIntentService: Releasing wakelock 
    06-28 11:15:54.916 13226-13226/com.example.android_javed.plp_calculator2 W/IInputConnectionWrapper: beginBatchEdit on inactive InputConnection 
    06-28 11:15:54.916 13226-13226/com.example.android_javed.plp_calculator2 W/IInputConnectionWrapper: finishComposingText on inactive InputConnection 
    06-28 11:15:54.916 13226-13226/com.example.android_javed.plp_calculator2 W/IInputConnectionWrapper: endBatchEdit on inactive InputConnection 
    06-28 11:18:00.776 13226-14416/com.example.android_javed.plp_calculator2 I/Process: Sending signal. PID: 13226 SIG: 9 




// this is my class 

package com.example.android_javed.plp_calculator2; 

import android.app.ProgressDialog; 
import android.content.Context; 
import android.content.Intent; 
import android.graphics.Color; 
import android.graphics.PorterDuff; 
import android.os.AsyncTask; 
import android.os.Build; 
import android.support.v7.app.ActionBar; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.support.v7.widget.Toolbar; 
import android.telephony.TelephonyManager; 
import android.util.Log; 
import android.view.View; 
import android.view.Window; 
import android.view.WindowManager; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.RelativeLayout; 
import android.widget.TextView; 
import android.widget.Toast; 

import com.google.android.gcm.GCMRegistrar; 

import org.apache.http.NameValuePair; 
import org.apache.http.message.BasicNameValuePair; 
import org.json.JSONException; 
import org.json.JSONObject; 

import java.io.UnsupportedEncodingException; 
import java.security.MessageDigest; 
import java.security.NoSuchAlgorithmException; 
import java.util.ArrayList; 
import java.util.List; 

import services.AESHelper; 
import services.Application_Constants; 
import services.JWTToken; 
import services.MCrypt; 
import services.ServiceHandler; 
import services.Shared_Preferences_Class; 
import services.Utility; 

public class RegisterActivity extends AppCompatActivity 
{ 

    private EditText edt_emp_id; 
    private RelativeLayout lay_continue; 
    private ProgressDialog regDialog; 
    private List<NameValuePair> list_param; 
    private String strRegistrUrl = Application_Constants.Main_URL+"xAction=userSignUp"; 
    private String strEmpCode="",str_user_gcm_reg_no="123",forgot_pass=""; 
    private Button btn_login; 
    private Utility utility; 
    private TextView tv_register,tv_bottom_text,tv_action_title; 
    private String master_key="1081882EF91SC6045F3B"; 
    private JWTToken jwtToken; 
    private MCrypt mcrypt; 

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

     /* getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM); 
     getSupportActionBar().setCustomView(R.layout.action_bar_text);*/ 

     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 


     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
     getSupportActionBar().setDisplayShowHomeEnabled(true); 

     setSupportActionBar(toolbar); 
     getSupportActionBar().setTitle(""); 

     tv_action_title = (TextView) toolbar.findViewById(R.id.tv_action_title); 
     tv_action_title.setText("Registration"); 


     init_views(); 
     strEmpCode = Shared_Preferences_Class.readString(getApplicationContext(),Shared_Preferences_Class.EMPLOYEE_CODE,""); 

     master_key = md5(master_key); 

     try { 
      if(!strEmpCode.equals("")&&!strEmpCode.equals(null)) 
      { 
       strEmpCode = AESHelper.decrypt(Application_Constants.SEEDVALUE, strEmpCode); 
      } 
     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

     toolbar.setNavigationOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       onBackPressed(); 
      } 
     }); 

     /* if(!strEmpCode.equals("")&&!strEmpCode.equals(null)) 
     { 
      Intent intent = new Intent(RegisterActivity.this,MainActivity.class); 
      startActivity(intent); 
      finish(); 
     } 
     else 
     { 
      GCMRegistrar.checkDevice(this); 
      GCMRegistrar.checkManifest(this); 

      GCMRegistrar.register(RegisterActivity.this, 
        GCMIntentService.SENDER_ID); 


      str_user_gcm_reg_no = GCMIntentService.REGISTRAION_ID; 
      String gcmreg = str_user_gcm_reg_no; 

      String imeistring= utility.getDeviceId(); 
     }*/ 

     toolbar.setNavigationOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       onBackPressed(); 
      } 
     }); 



     Intent intent = getIntent(); 

     if(intent.getExtras()!=null) 
     { 
      forgot_pass = intent.getStringExtra("forgot_pass"); 
      // tv_register.setText(forgot_pass); 
      tv_action_title.setText(forgot_pass); 
      tv_bottom_text.setText("Your Employee ID is be your Username"); 

     } 

     // status bar color change 
     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) 
     { 
      Window window = getWindow(); 
      window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); 
      window.setStatusBarColor(getResources().getColor(R.color.colorPrimaryDark)); 
     } 

     lay_continue.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View v) 
      { 

        strEmpCode = edt_emp_id.getText().toString().trim(); 
        if(!strEmpCode.equals("")&&!strEmpCode.equals(null)) 
        { 
         if(utility.checkInternet()) 
         { 


          new Register(strEmpCode,master_key).execute(); 
         } 
         else 
         { 
          Toast.makeText(RegisterActivity.this, "Please connect to internet", Toast.LENGTH_SHORT).show(); 
         } 

        } 
        else 
        { 
         edt_emp_id.setError("Enter employee code"); 
        } 
       } 



       /* Intent intent = new Intent(RegisterActivity.this,OTPActivity.class); 
       startActivity(intent);*/ 


     }); 
     btn_login.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       Intent intent = new Intent(RegisterActivity.this, LoginActivity.class); 
       startActivity(intent); 
      } 
     }); 
    } 

    public static final String md5(final String s) 
    { 
     final String MD5 = "MD5"; 
     try { 
      // Create MD5 Hash 
      MessageDigest digest = java.security.MessageDigest 
        .getInstance(MD5); 
      digest.update(s.getBytes()); 
      byte messageDigest[] = digest.digest(); 

      // Create Hex String 
      StringBuilder hexString = new StringBuilder(); 
      for (byte aMessageDigest : messageDigest) { 
       String h = Integer.toHexString(0xFF & aMessageDigest); 
       while (h.length() < 2) 
        h = "0" + h; 
       hexString.append(h); 
      } 
      return hexString.toString(); 

     } catch (NoSuchAlgorithmException e) { 
      e.printStackTrace(); 
     } 
     return ""; 
    } 



    public void init_views() 
    { 
     edt_emp_id = (EditText) findViewById(R.id.edt_emp_id); 

     // change underline color of editext 
     edt_emp_id.getBackground().setColorFilter(Color.parseColor("#7DB8F3"), PorterDuff.Mode.SRC_IN); 
     lay_continue = (RelativeLayout) findViewById(R.id.lay_continue); 
     btn_login = (Button) findViewById(R.id.btn_login); 
     tv_register = (TextView) findViewById(R.id.tv_register); 
     tv_bottom_text= (TextView) findViewById(R.id.tv_bottom_text); 

     // array list initialization 

     list_param = new ArrayList<>(); 
     utility = new Utility(getApplicationContext()); 
     jwtToken = new JWTToken(getApplicationContext()); 
     mcrypt= new MCrypt(); 

     GCMRegistrar.checkDevice(RegisterActivity.this); 
     GCMRegistrar.checkManifest(RegisterActivity.this); 

     GCMRegistrar.register(RegisterActivity.this, 
       GCMIntentService.SENDER_ID); 

     str_user_gcm_reg_no = GCMIntentService.REGISTRAION_ID; 
     String gcmreg = str_user_gcm_reg_no; 

     Log.d("HDFC", "GCM ID: " + str_user_gcm_reg_no); 




     String imeistring= utility.getDeviceId(); 

    } 



    class Register extends AsyncTask<String, String, String> 
    { 
     String str_json,strStatus="",strMsg="",server_jwt_token; 
     String strEmpCode="",user_mobile,employee_name,employee_email,employee_code,master_key; 


     public Register(String strEmpCode,String master_key) 
     { 
      this.strEmpCode = strEmpCode; 
      this.master_key=master_key; 

     } 


     @Override 
     protected void onPreExecute() 
     { 
      // TODO Auto-generated method stub 
      super.onPreExecute(); 
      /*pDialog = new ProgressDialog(LoginActivity.this); 
      pDialog.setTitle("Loading"); 
      pDialog.setMessage("Loading Please Wait..."); 
      pDialog.setCancelable(false); 
      pDialog.show();*/ 

      regDialog = new ProgressDialog(RegisterActivity.this, R.style.MyTheme); 
      regDialog.setCancelable(false); 
      regDialog.setProgressStyle(android.R.style.Widget_ProgressBar_Small); 
      regDialog.show(); 

     } 

     @Override 
     protected String doInBackground(String... params) 
     { 
      // TODO Auto-generated method stub 

이 섹션 // 스피 점점 오류는 릴리스 모드에서 예외를 throw

   ServiceHandler sh = new ServiceHandler(getApplicationContext()); 
       //String str = Shared_Preferences_Class.USER_ID; 
       str_user_gcm_reg_no = Shared_Preferences_Class.readString(RegisterActivity.this,Shared_Preferences_Class.GCM_REG_ID,""); 
       Log.d("HDFC", "GCM ID: " + str_user_gcm_reg_no); 

       String strJwtToken = jwtToken.getJWTToken(); 

       list_param.add(new BasicNameValuePair("employe_code", strEmpCode)); 
       list_param.add(new BasicNameValuePair("gcm_id", str_user_gcm_reg_no)); 
       list_param.add(new BasicNameValuePair("master_key", master_key)); 
       list_param.add(new BasicNameValuePair("jwtToken", strJwtToken)); 


       try { 
        str_json = sh.makeServiceCall(strRegistrUrl, ServiceHandler.POST, list_param); 
        JSONObject jobject = new JSONObject(str_json); 
        server_jwt_token= jobject.getString("server_jwt_token"); 
        strStatus = jobject.getString("status"); 

        // decrypt 
        try { 

         strStatus = new String(mcrypt.decrypt(strStatus), "UTF-8"); 
       /* String str_strStatus = new String(mcrypt.decrypt(strStatus)); 
        System.out.print(str_strStatus);*/ 

        } 
        catch (Exception e) 
        { 
         e.printStackTrace(); 
        } 




        if(jwtToken.decryptJWTToken(server_jwt_token)) 
        { 

         if (strStatus.equalsIgnoreCase("success")) 
         { 

          employee_code = jobject.getString("employee_code"); 
          user_mobile = jobject.getString("mobile_no"); 

          strMsg = jobject.getString("msg"); 

          // decrypt 
          try { 

           employee_code = new String(mcrypt.decrypt(employee_code)); 
           user_mobile = new String(mcrypt.decrypt(user_mobile)); 

           strMsg = new String(mcrypt.decrypt(strMsg)); 

          } catch (Exception e) { 
           e.printStackTrace(); 
          } 


         } else if (strStatus.equalsIgnoreCase("fail")) 
         { 
          strMsg = jobject.getString("msg"); 
          // decrypt 
          try { 



           strMsg = new String(mcrypt.decrypt(strMsg)); 

          } catch (Exception e) { 
           e.printStackTrace(); 
          } 

         } 
        } 
        else 
        { 
         strStatus = "fail"; 
        } 

       } catch (JSONException e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
       } 





      return null; 
     } 

     @Override 
     protected void onPostExecute(String result) 
     { 
      // TODO Auto-generated method stub 
      //pDialog.dismiss(); 
      //System.out.println(str_json); 
      regDialog.dismiss(); 
      super.onPostExecute(result); 

      try 
      { 

       if (strStatus.equalsIgnoreCase("success")) 
       { 

        try { 
         if(!employee_code.equals("")&&!employee_code.equals(null)) 
         { 
          //employee_code = utility.convertStringToBase64(employee_code); 
          // user_mobile= AESHelper.encrypt(Application_Constants.SEEDVALUE, user_mobile); 
          employee_code = AESHelper.encrypt(Application_Constants.SEEDVALUE, employee_code); 

         } 
        } 
        catch (Exception e) 
        { 
         e.printStackTrace(); 
        } 

        Shared_Preferences_Class.writeString(RegisterActivity.this,Shared_Preferences_Class.EMPLOYEE_CODE,employee_code); 

        Intent intent = new Intent(RegisterActivity.this,OTPActivity.class); 
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
        intent.putExtra("userMobile",user_mobile); 
        startActivity(intent); 
        finish(); 

       } 
       else if (strStatus.equalsIgnoreCase("fail")) 
       { 

        Toast.makeText(getApplicationContext(), strMsg, Toast.LENGTH_SHORT).show(); 

       } 
       else 
       { 
        //Toast.makeText(getApplicationContext(), str_msg,Toast.LENGTH_SHORT).show(); 
       } 

       if (str_json == null) 
       { 
        Toast.makeText(getApplicationContext(), "This may be server issue", Toast.LENGTH_SHORT).show(); 
       } 

      } 
      catch(Exception e) 
      { 
       e.printStackTrace(); 
      } 




     } 

    } 

} 

// 내가 오류 E/예술 다음 점점이 코드를 컴파일 aftre : 하위 클래스에 시도 거부 클래스 caafbi을 /data/app/com.example.android_javed.plp_calculator2-2/base.apk의 잘못된 클래스 caafba

+1

이 무엇인지 거짓 – silverFoxA

+1

헤이 온 가족을 작게하다을 설정하려고하면 다음과 같은 클래스는 단지 난독 설정에서 동일한에 대한 있었던 파라미터를 계속 넣어 필요하면 false로 변경하지만, 우리는 여기를보고 문제의 코드는 어디에 있습니까? – Razgriz

+0

안녕하세요 제발 도와주세요 – javed

답변

0

코드에 문제가있는 것은

을 사용할 때 사용중인 클래스가 APK에 포함되어 있지 않다는 것입니다. 사실

작게하다 따라서 다시 한번

+0

하지만 내가 거짓으로 그들에게 쉽게 dex2jar를 사용하여 내 코드를 얻으려면 설정합니다 – javed

+0

나는 잘 알고 있어요. 제 답변을 올바르게 읽어주세요. – silverFoxA

관련 문제