Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Logcat不显示调试标记_Android_Android Logcat - Fatal编程技术网

Android Logcat不显示调试标记

Android Logcat不显示调试标记,android,android-logcat,Android,Android Logcat,我正在开发一个应用程序。在其中,我正在活动中使用工作线程。我的应用程序有一些问题,我尝试使用调试标签找出问题所在。但是logcat不显示线程内部的标记。我是新手,所以对此不太了解 这是密码 package com.example.forgetmenot; import java.util.ArrayList; import java.util.Calendar; import android.app.Service; import android.content.Intent; import

我正在开发一个应用程序。在其中,我正在活动中使用工作线程。我的应用程序有一些问题,我尝试使用调试标签找出问题所在。但是logcat不显示线程内部的标记。我是新手,所以对此不太了解

这是密码

package com.example.forgetmenot;

import java.util.ArrayList;
import java.util.Calendar;

import android.app.Service;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Handler;
import android.os.IBinder;
import android.util.Log;
import android.widget.Toast;

public class BirthdayService extends Service{

    SQLiteDatabase db;
    BirthdayDatabase myDatabase = new BirthdayDatabase(this, null, null, 0);
    private ArrayList<String> data = new ArrayList<String>();
    Handler handler = new Handler();
    String form[] ={"_id","name","contact","day","month","year"};
    String TAG = "Debug";
    @Override
    public IBinder onBind(Intent arg0) {

        return null;
    }

    @Override
    public void onCreate() {
//      Toast.makeText(this,"birthday Service started", Toast.LENGTH_SHORT).show();
        super.onCreate();
    }

    @Override
    public void onDestroy() {

        super.onDestroy();
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Calendar cal = Calendar.getInstance();

        new Thread(new Runnable() {

            @Override
            public void run() {
                Calendar cal = Calendar.getInstance();
                int mDay = cal.get(Calendar.DAY_OF_MONTH);
                int mMonth = cal.get(Calendar.MONTH);
                Log.d(TAG, "Current day: "+mDay);
                Log.d(TAG,"Current month: "+mMonth);
                int birthDay = 0;
                int birthMonth = 0;
                final Cursor mycursor = db.query("birthdays", form, null, null, null, null, null, null);
                while(mycursor.moveToNext()){
                    birthDay = mycursor.getInt(3);
                    birthMonth = mycursor.getInt(4);
                    Log.d(TAG, "birhDay:"+birthDay);
                    Log.d(TAG, "birthMonth:"+birthMonth);
                    if(mDay == birthDay && mMonth == birthMonth)
                    {
                        handler.post(new Runnable() {

                            @Override
                            public void run() {

                                Toast.makeText(getBaseContext(), "Happy Birthday "+mycursor.getString(1), Toast.LENGTH_SHORT).show();
                            }

                        });

                        db.close();
                        break;
                    }
                }
                db.close();

            }

        });

        Toast.makeText(this, "BirthdayService", Toast.LENGTH_SHORT).show();
        return 0;
    }

}
package com.example.forgetmenot;
导入java.util.ArrayList;
导入java.util.Calendar;
导入android.app.Service;
导入android.content.Intent;
导入android.database.Cursor;
导入android.database.sqlite.SQLiteDatabase;
导入android.os.Handler;
导入android.os.IBinder;
导入android.util.Log;
导入android.widget.Toast;
公共类生日服务扩展了该服务{
sqlitedb数据库;
BirthdayDatabase myDatabase=新的BirthdayDatabase(this,null,null,0);
private ArrayList data=new ArrayList();
Handler=newhandler();
字符串形式[]={“\u id”,“name”,“contact”,“day”,“month”,“year”};
String TAG=“Debug”;
@凌驾
公共IBinder onBind(意图arg0){
返回null;
}
@凌驾
public void onCreate(){
//Toast.makeText(此“生日服务已开始”,Toast.LENGTH_SHORT).show();
super.onCreate();
}
@凌驾
公共空间{
super.ondestory();
}
@凌驾
公共int onStartCommand(Intent Intent、int标志、int startId){
Calendar cal=Calendar.getInstance();
新线程(newrunnable()){
@凌驾
公开募捐{
Calendar cal=Calendar.getInstance();
int mDay=cal.get(日历日/月);
int mMonth=cal.get(日历月);
日志d(标签“当日:+mDay”);
日志d(标记“当前月份:+mm”);
int生日=0;
int生日月=0;
最终游标mycursor=db.query(“生日”,表单,null,null,null,null,null);
while(mycursor.moveToNext()){
生日=mycursor.getInt(3);
birthMonth=mycursor.getInt(4);
Log.d(标签“birhDay:+生日”);
Log.d(标签“生日:”+生日);
如果(mDay==生日和mMonth==生日月)
{
handler.post(新的Runnable(){
@凌驾
公开募捐{
Toast.makeText(getBaseContext(),“生日快乐”+mycursor.getString(1),Toast.LENGTH_SHORT.show();
}
});
db.close();
打破
}
}
db.close();
}
});
Toast.makeText(这是“生日服务”,Toast.LENGTH_SHORT).show();
返回0;
}
}

您必须确保在“设备信息”选项卡中选择的模拟器或设备, 如果仍然找不到,请重置adb,然后请选择您的模拟器,然后重试


仍然会遇到同样的问题,然后重新启动eclipse或adb。

启动您在onStartCommand中创建的线程。

这不是问题“您在描述什么”。问题是标记位于工作线程内部。所以worker中的标签在logcat中显示值。谢谢老兄,我忘记启动这个线程了。。。多么幼稚的错误啊。