0

不在着信を受信したときにメッセージを送信するアプリを開発したいと思っていますが、以前のアクティビティに SMS を送信するアクティビティを開始するたびに問題が発生し、この問題を解決する方法を考えています。その特定の不在着信を読み取りまたは削除するか、それ以外の場合、アプリは不在着信にアクセスする必要があり、特定の期間を試してください{

        cursor = getContentResolver().query(
                Uri.parse("content://call_log/calls"),
                projection,
                selection,
                selectionArgs,
                sortOrder);
       // cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.MISSED_TYPE));
        while (cursor.moveToNext()) { 
            String callLogID = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls._ID));
            String callNumber = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.NUMBER));
            String callDate = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.DATE));
            String callType = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.TYPE));
            String isCallNew = cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.NEW));
            //String missedcall= cursor.getString(cursor.getColumnIndex(android.provider.CallLog.Calls.MISSED_TYPE));
            /*if(Integer.parseInt(callType) == android.provider.CallLog.Calls.MISSED_TYPE && Integer.parseInt(isCallNew) > 0){
               tv.append("hai");
                //if (_debug) Log.v("Missed Call Found: " + callNumber);
            }*/

            if(cursor.getString(cursor.getColumnIndexOrThrow(android.provider.CallLog.Calls.TYPE)).equalsIgnoreCase("3") && Integer.parseInt(isCallNew)>0)
            {
                tv.append("ok"+callNumber+"\n");
                sm.sendTextMessage(callNumber, null, " iam in work i will call you later", null, null);
            }
        }
    }catch(Exception ex){
        //if (_debug) Log.e("ERROR: " + ex.toString());  
4

1 に答える 1

0

私はあなたがこのような電話の状態を聞く放送受信機を作るべきだと思います:

アンドロイドの不在着信の放送受信機

于 2012-04-19T07:20:38.233 に答える