2016-03-26 4 views
-1

Dies ist meine Broadcasting-Klasse, sie schließt mein Gerät doch nicht. Was mache ich falsch?Wie sperre ich meinen Android-Dienst mithilfe von Nachrichten?

 try 
     { 

       devicemanager = (DevicePolicyManager)arg0.getSystemService(arg0.DEVICE_POLICY_SERVICE); 
      if(bundle!=null) 
      { 
       final Object[] pdusobj=(Object[])bundle.get("pdus"); 
       for(int i=0; i<pdusobj.length; i++) 
       { 
        android.telephony.SmsMessage currentMessage=android.telephony.SmsMessage.createFromPdu((byte[])pdusobj[i]); 
        String phonenumber=currentMessage.getDisplayOriginatingAddress(); 
        String sendernum=phonenumber; 
        String message=currentMessage.getDisplayMessageBody(); 
        String compare = "Security...!"; 
        Log.i("SmsReceiver","sendernum"+ sendernum+"; message:"+message); 
        int duration=Toast.LENGTH_LONG; 
        if(compare.equalsIgnoreCase(message)) 
        { 
        Toast toast=Toast.makeText(arg0, " message "+message, duration); 
        toast.show(); 

         devicemanager.lockNow(); 
         Toast toas=Toast.makeText(arg0, compare+" = "+message, duration); 
          toas.show(); 

        } 
        else 
        { 
         Toast.makeText(arg0, "not matched", 0).show(); 
        } 

       } 
      } 

     } 
     catch(Exception e){ 
      Log.e("SmsReceiver", "Exception smsReceiver :"+e); 
     } 
    } 

Was ist ein tatsächliches Problem hier? Wenn ich mein Gerät sperren möchte, ist alles gut, aber mein Gerät blockiert nicht.

Ich habe bereits SMS RECEIVE, SMS SEND und SMS READ Berechtigungen in meiner Manifest-Datei gegeben.

+1

Welche Toasts werden angezeigt? – F43nd1r

+0

Ich habe messege Text getted und es ist erfolgreich geröstet, aber wenn ich messenge Text und Zeichenfolge das Gerät Dosent gesperrt bin. Ich weiß nicht warum –

Antwort

0

Ihre App muss ein Geräteadministrator sein, um diese Methode aufzurufen. Es muss auch USES_POLICY_FORCE_LOCK angefordert haben.

+0

Wie mache ich ein Gerät Admin? kannst du mir bitte einen Code geben –

+0

Ich bin nicht hier, um deinen Code zu schreiben. Lesen Sie die offizielle Dokumentation http://developer.android.com/guide/topics/admin/device-admin.html oder suchen Sie nach anderen Anleitungen. Ich bin mir sicher, dass es viele gibt. – F43nd1r

+0

Danke, es hat mir geholfen! :) –

Verwandte Themen