服务&广播与服务day2(66期第八天)

本文详细介绍了Android中服务的启动方式及生命周期,包括startService和bindService的区别,以及如何结合使用这两种方式。同时,还讲解了如何使用对话框构建器创建不同类型的对话框。

服务两种启动方式(掌握)

  • startService
    • 通过startService启动的服务,该服务所在进程会变成服务进程
    • 启动服务的activity和服务不再有一毛钱关系
  • bindService
    • 通过bindService启动的服务,进程优先级不变,绑定服务不会使进程变成服务进程
    • 绑定服务,是activity与服务建立连接,如果activity销毁了,服务也会被解绑并销毁,但是如果服务被销毁,activity不会被销毁
  • 绑定服务和解绑服务的生命周期方法:onCreate->onBind->onUnbind->onDestroy

找领导办证(掌握)

  • 把服务看成一个领导,服务中有一个banZheng方法,如何才能访问?
  • 绑定服务时,会触发服务的onBind方法,此方法会返回一个Ibinder的对象给MainActivity,通过这个对象访问服务中的方法
  • 绑定服务

    Intent intent = new Intent(this, BanZhengService.class);
    bindService(intent, conn, BIND_AUTO_CREATE);
    
  • 绑定服务时要求传入一个ServiceConnection实现类的对象
  • 定义这个实现类

    class MyServiceconn implements ServiceConnection{
    @Override
    public void onServiceConnected(ComponentName name, IBinder service) {
        zjr = (PublicBusiness) service;
    }
    @Override
    public void onServiceDisconnected(ComponentName name) { 
    }
    

    }

  • 创建实现类对象

     conn = new MyServiceconn();
    
  • 在服务中定义一个类实现Ibinder接口,以在onBind方法中返回

    class ZhongJianRen extends Binder implements PublicBusiness{
    public void QianXian(){
        //访问服务中的banZheng方法
        BanZheng();
    }   
    public void daMaJiang(){
    
    }
    

    }

  • 把QianXian方法抽取到接口PublicBusiness中定义

两种启动方法混合使用(掌握)

  • 用服务实现音乐播放时,因为音乐播放必须运行在服务进程中,可是音乐服务中的方法,需要被前台Activity所调用,所以需要混合启动音乐服务
  • 先start,再bind,销毁时先unbind,在stop

使用服务注册广播接收者(掌握)

  • Android四大组件都要在清单文件中注册
  • 广播接收者可以使用清单文件注册
    • 一旦应用部署,广播接收者就生效了,直到用户手动停止应用或者应用被删除
  • 广播接收者可以使用代码注册
    • 需要广播接收者运行时,使用代码注册,不需要时,可以使用代码解除注册
  • 电量改变、屏幕开关,必须使用代码注册

  • 注册广播接收者

    //创建广播接收者对象
    receiver = new ScreenOnOffReceiver();
    //通过IntentFilter对象指定广播接收者接收什么类型的广播
    IntentFilter filter = new IntentFilter();
    filter.addAction(Intent.ACTION_SCREEN_OFF);
    filter.addAction(Intent.ACTION_SCREEN_ON);
    
    //注册广播接收者
    registerReceiver(receiver, filter);
    
  • 解除注册广播接收者

    unregisterReceiver(receiver);
    
  • 解除注册之后,广播接收者将失去作用

本地服务:服务和启动它的组件在同一个进程

远程服务:服务和启动它的组件不在同一个进程

  • 远程服务只能隐式启动,类似隐式启动Activity,在清单文件中配置Service标签时,必须配置intent-filter子节点,并指定action子节点

AIDL(掌握)

  • Android interface definition language
  • 安卓接口定义语言
  • 作用:跨进程通信
  • 应用场景:远程服务中的中间人对象,其他应用是拿不到的,那么在通过绑定服务获取中间人对象时,就无法强制转换,使用aidl,就可以在其他应用中拿到中间人类所实现的接口

支付宝远程服务

  1. 定义支付宝的服务,在服务中定义pay方法
  2. 定义中间人对象,把pay方法抽取成接口
  3. 把抽取出来的接口后缀名改成aidl。aidl文件中所有东西都是public的,不需要也不能自己定义访问修饰符
  4. 中间人对象直接继承Stub对象,这个对象已经继承了Binder并实现了PublicBusiness接口
  5. 注册这个支付宝服务,定义它的intent-Filter

需要支付的应用

  1. 把刚才定义好的aidl文件拷贝过来,注意aidl文件所在的包名必须跟原包名一致
  2. 远程绑定支付宝的服务,通过onServiceConnected方法我们可以拿到中间人对象
  3. 把中间人对象通过Stub.asInterface方法强转成定义了pay方法的接口
  4. 调用中间人的pay方法

五种前台进程(掌握)

  1. activity执行了onresume方法,获得焦点
  2. 拥有一个跟正在与用户交互的activity绑定的服务
  3. 拥有一个服务执行了startForeground()方法
  4. 拥有一个正在执行onCreate()、onStart()或者onDestroy()方法中的任意一个的服务
  5. 拥有一个正在执行onReceive方法的广播接收者

两种可见进程(掌握)

  1. activity执行了onPause方法,失去焦点,但是可见
  2. 拥有一个跟可见或前台activity绑定的服务

对话框

确定取消对话框(掌握)

  • 创建对话框构建器对象,类似工厂模式

  • AlertDialog.Builder builder = new Builder(this);
  • 设置标题和正文

  • builder.setTitle(“警告”);
    builder.setMessage(“若练此功,必先自宫”);
  • 设置确定和取消按钮

    builder.setPositiveButton("现在自宫", new OnClickListener() {
    
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            Toast.makeText(MainActivity.this, "恭喜你自宫成功,现在程序退出", 0).show();
        }
    });
    
    builder.setNegativeButton("下次再说", new OnClickListener() {
    
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            Toast.makeText(MainActivity.this, "若不自宫,一定不成功", 0).show();
        }
    });
    
  • 使用构建器创建出对话框对象

    AlertDialog ad = builder.create();
    ad.show();
    

单选对话框(熟悉)

    AlertDialog.Builder builder = new Builder(this);
    builder.setTitle("选择你的性别");

* 定义单选选项
*
final String[] items = new String[]{
“男”, “女”, “其他”
};
//-1表示没有默认选择
//点击侦听的导包要注意别导错
builder.setSingleChoiceItems(items, -1, new OnClickListener() {

        //which表示点击的是哪一个选项
        @Override
        public void onClick(DialogInterface dialog, int which) {
            Toast.makeText(MainActivity.this, "您选择了" + items[which], 0).show();
            //对话框消失
            dialog.dismiss();
        }
    });

    builder.show();

多选对话框(熟悉)

    AlertDialog.Builder builder = new Builder(this);
    builder.setTitle("请选择你认为最帅的人");

* 定义多选的选项,因为可以多选,所以需要一个boolean数组来记录哪些选项被选了
*
final String[] items = new String[]{
“赵帅哥”,
“赵师哥”,
“赵老师”,
“侃哥”
};
//true表示对应位置的选项被选了
final boolean[] checkedItems = new boolean[]{
true,
false,
false,
false,
};
builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() {

        //点击某个选项,如果该选项之前没被选择,那么此时isChecked的值为true
        @Override
        public void onClick(DialogInterface dialog, int which, boolean isChecked) {
            checkedItems[which] = isChecked;
        }
    });

    builder.setPositiveButton("确定", new OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            StringBuffer sb = new StringBuffer();
            for(int i = 0;i < items.length; i++){
                sb.append(checkedItems[i] ? items[i] + " " : "");
            }
            Toast.makeText(MainActivity.this, sb.toString(), 0).show();
        }
    });
    builder.show();

进度条对话框()熟悉

final ProgressDialog dialog = new ProgressDialog(this);
    dialog.setIcon(android.R.drawable.ic_dialog_alert);
    dialog.setTitle("正在自宫中,请稍候...");
    dialog.setMax(100);
    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    Thread thread = new Thread(){
        @Override
        public void run() {
            for (int i = 0; i < 100; i++) {
                dialog.setProgress(i);
                try {
                    sleep(50);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            //完成,进度条消失
            dialog.dismiss();
        }
    };
    thread.start();
    dialog.show();

国际化(掌握)


样式与主题(熟悉)

  • 样式与主题定义方式一样
  • 样式用于布局文件中的组件
  • 主题用于Activity
新的报错 (base) easyai@easyaioyactnns:~/GAMIT_GLOBK/dome2$ sh_gamit -expt demo2 -d 2017 056 -orbit IGSF -noftp -dopt D ao x c &gt; sh_gamit8.log ls: No match. rm: 无法删除 &#39;session.info&#39;: 没有那个文件或目录 STOP FATAL Error: Stop from report_stat ls: No match. STOP FATAL Error: Stop from report_stat 这是log文件内容 sh_gamit Version 10.76 (2022/02/13) Input options -expt demo2 -d 2017 056 -orbit IGSF -noftp -dopt D ao x c -------------------------------------------------------------- Processing 2017 056 X-file series to be used is: 7 Sites extracted from sites.default to exclude from automatic station.info updating: all_sites Checking and making required directories X-files to be excluded: Checking that enough diskspace to complete run is available Using IGS final orbits - repro3 for GPS weeks 730-2237 and repro2 for GPS weeks 658-729 Checking GAMIT tables in directory: /home/easyai/GAMIT_GLOBK/dome2/tables sh_setup -yr 2017 -doy 056 -series usno -expt demo2 -apr igb14_comb.apr -upd_l -topt none EXECUTING sh_setup ~/GAMIT_GLOBK/dome2/tables ~/GAMIT_GLOBK/dome2 localeop: no Checking links: sh_links.tables -frame J2000 -year 2017 -eop usno -topt none Updating lfile. with coordinates from: igb14_comb.apr New Version merge_apr igb14_comb.apr lfile. lfile.merged 2017 056 In igb14_comb.apr there are 9532 sites, and 1188 EXTENDED entries Mapping to year 2017 DOY 056 JD 2457809.5 Not mapped if JD is 0.00 Checking to see if EOP tables are up to date sh_update_eop -series usno -jd 2457809.5000 -noftp Y -ftp_prog ftp -inv -min 7 Observations within the span of the current eop series table: usno Not attempting to get new series g-file 056/gigsg7.056 being remade Orbit file igs19376.sp3 exists in /home/easyai/GAMIT_GLOBK/dome2/igs directory, no download attempted Using existing igs19376.sp3 in igs directory to get a g-file Use SP3 accuracy code to exclude satellites Maximum fit rms for including a satellite 0.100 m sh_sp3fit -f igs19376.sp3 -gnss G -o igsg -u -d 2017 056 -m 0.100 -srp_param allpr sh_sp3fit: Using sestbl. found in /home/easyai/GAMIT_GLOBK/dome2/igs Setting srpprm = allpr for ECOMC sh_sp3fit: Generating fitted g-file for: igsg 2017 056 covering days 056 056 sh_sp3fit: gfile and sp3fit files for igsg renamed to igsg for GPS sestbl. exists--do not craeate a link STATUS :251116:1420:40.0 NGSTOT/orbits/ngstot: Started NGSTOT ver. 10.23 2024/01/2914:18 UTC (Linux) Library ver. 11.53 of 2025/01/31 22:24 UTC (Linux) STATUS :251116:1420:40.0 NGSTOT/orbits/ngstot: Reading igs19376.sp3 to write tigs19376.sp3 for GNSS = G STATUS :251116:1420:40.0 NGSTOT/orbits/ngstot: Converting CE to CM using otlcmc.dat offsets for FES2004 STATUS :251116:1420:40.0 NGSTOT/orbits/tdtrit: Successfully wrote Earth-fixed T-file 97 epochs written on T-file STATUS :251116:1420:40.0 NGSTOT/orbits/ngstot: Writing inertial T-file (Name tigs19376.sp3) STATUS :251116:1420:40.0 NGSTOT/orbits/openb: Opened print file: (Name trot.out) STATUS :251116:1420:40.0 NGSTOT/orbits/openb: Opened output T-file: (Name tigs19376.sp3) STATUS :251116:1420:40.0 NGSTOT/orbits/openb: Opened input T-file: (Name tigs1937e.sp3) STATUS :251116:1420:40.0 NGSTOT/orbits/trot: Input T-file is Earth-fixed, converting to inertial STATUS :251116:1420:40.0 NGSTOT/orbits/trot: Successfully wrote Inertial T-file: (Name tigs19376.sp3) STATUS :251116:1420:40.0 NGSTOT/orbits/gmake: Successfully wrote G-file: (Name gigs19376.sp3) STATUS :251116:1420:40.0 NGSTOT/orbits/ngstot: Normal end to NGSTOT sh_sp3fit: Creating initial ARC input file sh_sp3fit: Integrating days 056 to 056 sh_sp3fit: ARC models: : EGR08 ECOMC 900.0 75.00 GPST INERTIAL J2000 IAU0A TUME1 ANTBK 12 4 12 1 STATUS :251116:1420:40.0 ARC/aversn: Started ARC, Version 10.02 of 2025/02/06 19:21 UTC (Linux) Library ver. 11.53 of 2025/01/31 22:24 UTC (Linux) STATUS :251116:1420:40.0 ARC/read_arc_batch: Degree options Grav 12 Etide 4 Otide 12 LBODY 1 STATUS :251116:1420:40.0 ARC/filopn: Opened ocean tide table (Name otides.dat) STATUS :251116:1420:41.0 ARC/read_otides: MODEL FES2014b (Name otides.dat) WARNING:251116:1420:41.0 ARC/check_gmodels: Requested radiation-pressure model (ECOMC) differs from g-file (ECOM1) (Name gigs19376.sp3) WARNING:251116:1420:41.0 ARC/check_gmodels: Use requested model, set RAD(1)=1.0, others = 0.0 WARNING:251116:1420:41.0 ARC/check_gmodels: Requested Earth radiation-pressure model (TUME1) differs from g-file (NONE ) (Name gigs19376.sp3) WARNING:251116:1420:41.0 ARC/check_gmodels: Requested antenna thurst model (ANTBK) differs from g-file (NONE ) (Name gigs19376.sp3) STATUS :251116:1420:41.0 ARC/lib/ephred: Opened planetary ephemeris file (Name nbody) STATUS :251116:1420:41.0 ARC/lib/ephred: Opened JPL ephemeris (Name nbody) STATUS :251116:1420:41.0 ARC/arc: Integrating satellite 1 G01 63 IIF PRN 1 STATUS :251116:1420:41.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:41.0 ARC/arc: Integrating satellite 2 G02 61 IIR-B PRN 2 STATUS :251116:1420:41.0 ARC/ertorb: Antenna power for BLOCK IIR-B = 60.00 watts STATUS :251116:1420:42.0 ARC/arc: Integrating satellite 3 G03 69 IIF PRN 3 STATUS :251116:1420:42.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:42.0 ARC/arc: Integrating satellite 4 G04 49 IIR-M PRN 4 STATUS :251116:1420:42.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:42.0 ARC/arc: Integrating satellite 5 G05 50 IIR-M PRN 5 STATUS :251116:1420:42.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:43.0 ARC/arc: Integrating satellite 6 G06 67 IIF PRN 6 STATUS :251116:1420:43.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:43.0 ARC/arc: Integrating satellite 7 G07 48 IIR-M PRN 7 STATUS :251116:1420:43.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:44.0 ARC/arc: Integrating satellite 8 G08 72 IIF PRN 8 STATUS :251116:1420:44.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:44.0 ARC/arc: Integrating satellite 9 G09 68 IIF PRN 9 STATUS :251116:1420:44.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:44.0 ARC/arc: Integrating satellite 10 G10 73 IIF PRN 10 STATUS :251116:1420:44.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:45.0 ARC/arc: Integrating satellite 11 G11 46 IIR-A PRN 11 STATUS :251116:1420:45.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:45.0 ARC/arc: Integrating satellite 12 G12 58 IIR-M PRN 12 STATUS :251116:1420:45.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:45.0 ARC/arc: Integrating satellite 13 G13 43 IIR-A PRN 13 STATUS :251116:1420:45.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:46.0 ARC/arc: Integrating satellite 14 G14 41 IIR-A PRN 14 STATUS :251116:1420:46.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:46.0 ARC/arc: Integrating satellite 15 G15 55 IIR-M PRN 15 STATUS :251116:1420:46.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:47.0 ARC/arc: Integrating satellite 16 G16 56 IIR-A PRN 16 STATUS :251116:1420:47.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:47.0 ARC/arc: Integrating satellite 17 G17 53 IIR-M PRN 17 STATUS :251116:1420:47.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:47.0 ARC/arc: Integrating satellite 18 G18 54 IIR-A PRN 18 STATUS :251116:1420:47.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:48.0 ARC/arc: Integrating satellite 19 G19 59 IIR-B PRN 19 STATUS :251116:1420:48.0 ARC/ertorb: Antenna power for BLOCK IIR-B = 60.00 watts STATUS :251116:1420:48.0 ARC/arc: Integrating satellite 20 G20 51 IIR-A PRN 20 STATUS :251116:1420:48.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:49.0 ARC/arc: Integrating satellite 21 G21 45 IIR-A PRN 21 STATUS :251116:1420:49.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:49.0 ARC/arc: Integrating satellite 22 G22 47 IIR-B PRN 22 STATUS :251116:1420:49.0 ARC/ertorb: Antenna power for BLOCK IIR-B = 60.00 watts STATUS :251116:1420:49.0 ARC/arc: Integrating satellite 23 G23 60 IIR-B PRN 23 STATUS :251116:1420:49.0 ARC/ertorb: Antenna power for BLOCK IIR-B = 60.00 watts STATUS :251116:1420:50.0 ARC/arc: Integrating satellite 24 G24 65 IIF PRN 24 STATUS :251116:1420:50.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:50.0 ARC/arc: Integrating satellite 25 G25 62 IIF PRN 25 STATUS :251116:1420:50.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:51.0 ARC/arc: Integrating satellite 26 G26 71 IIF PRN 26 STATUS :251116:1420:51.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:51.0 ARC/arc: Integrating satellite 27 G27 66 IIF PRN 27 STATUS :251116:1420:51.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:51.0 ARC/arc: Integrating satellite 28 G28 44 IIR-A PRN 28 STATUS :251116:1420:51.0 ARC/ertorb: Antenna power for BLOCK IIR-A = 60.00 watts STATUS :251116:1420:52.0 ARC/arc: Integrating satellite 29 G29 57 IIR-M PRN 29 STATUS :251116:1420:52.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:52.0 ARC/arc: Integrating satellite 30 G30 64 IIF PRN 30 STATUS :251116:1420:52.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:53.0 ARC/arc: Integrating satellite 31 G31 52 IIR-M PRN 31 STATUS :251116:1420:53.0 ARC/ertorb: Antenna power for BLOCK IIR-M = 145.00 watts STATUS :251116:1420:53.0 ARC/arc: Integrating satellite 32 G32 70 IIF PRN 32 STATUS :251116:1420:53.0 ARC/ertorb: Antenna power for BLOCK IIF = 240.00 watts STATUS :251116:1420:53.0 ARC/arc: Normal stop in ARC (Name t17056.tmp) Running: orbfit orbfit.cmd.2017_056_142040 sp3fit_igsg7056 0 t17056.tmp tigs19376.sp3 STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Started ORBFIT ver. 10.23 2024/01/2914:18 UTC (Linux) Library ver. 11.53 of 2025/01/31 22:24 UTC (Linux) STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Opened T-file: (Name t17056.tmp) STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Opened T-file: (Name tigs19376.sp3) STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Running iteration: 1 STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Max orbit misfit tolerance is: 0.1000 STATUS :251116:1420:53.0 ORBFIT/orbits/orbfit: Reading T-files and forming normal equations STATUS :251116:1420:56.0 ORBFIT/orbits/norm_solve: Solving the normal equations STATUS :251116:1420:56.0 ORBFIT/orbits/norm_solve: Normal equations solve STATUS :251116:1420:56.0 ORBFIT/orbits/write_summary: Calculating residuals STATUS :251116:1420:56.0 ORBFIT/orbits/write_summary: Overall fit (rms) to external orbit = 0.00398 STATUS :251116:1420:56.0 ORBFIT/orbits/write_g: Successfully wrote G-file STATUS :251116:1420:56.0 ORBFIT/orbits/orbfit: Normal end of ORBFIT Using nav file for SV clocks /home/easyai/GAMIT_GLOBK/dome2/brdc/brdc0560.17n exists Checking for raw data with no RINEX sh_make_rinex -yr 2017 -doy 056 -rawd /home/easyai/GAMIT_GLOBK/dome2/raw -rdir /home/easyai/GAMIT_GLOBK/dome2/rinex -mdir /home/easyai/GAMIT_GLOBK/dome2/mkrinex -ndays 1 0 2017 055: No RINEX files need to be made 2017 056: No RINEX files need to be made Processing directory 056 exists ~/GAMIT_GLOBK/dome2/056 ~/GAMIT_GLOBK/dome2/igs ~/GAMIT_GLOBK/dome2 Linking rinex files from: /home/easyai/GAMIT_GLOBK/dome2/rinex sh_link_rinex -year 2017 -days 056 -ndays 1 0 -sesfo 0 0 24 0 -dir /home/easyai/GAMIT_GLOBK/dome2/rinex -minspan 0.1 Checking RINEX files on days 055 056 in directory /home/easyai/GAMIT_GLOBK/dome2/rinex Hold on Looking for rinex files which have data between: 2017/02/25 0:00 and 2017/02/25 23:59 and have a minimum span of 0.1 hrs Linking /home/easyai/GAMIT_GLOBK/dome2/rinex/lhaz0560.17o to current directory Linking /home/easyai/GAMIT_GLOBK/dome2/rinex/shao0560.17o to current directory Linking /home/easyai/GAMIT_GLOBK/dome2/rinex/urum0560.17o to current directory Linked ../ionex/igsg0560.17i to fdemo27.056 Running links.day Checking RINEX nav file, g-file, and sp3-file links Uncompressing x-files and k-files Removing existing GAMIT.[status][warning][fatal] files Running makexp,makej, and makex and checking that d-file includes all x-files sh_preproc -ydoy 2017 056 -nav brdc0560.17n -gnss G -lfreq D -expt demo2 -orbt igsg -sp3file igs19376.sp3 -jclock brdc -sint 30 -nepc 2880 -stime 0 0 -remakex C -remakek C -remakej Y -remakeg Y -xsite -xver 7 -cmdfile tmp.cmds.easyaioyactnns:25_11_16_142037 procdir is /home/easyai/GAMIT_GLOBK/dome2 control path /home/easyai/GAMIT_GLOBK/dome2/control Non-unique x-files list: Unique sorted x-files list: Excluderx: all_sites brus graz sofi ttth stinfo_excld all_sites X-file version to be used is: 7 Checking for existing x-files xf_list: 0 session.info missing or empty link: remove and recreate Finished checking x-files Check 3 RINEX files Checking if we need to update station.info from RINEX headers Using time-tag easyaioyactnns:demo2.056:142058 LIST: /home/easyai/GAMIT_GLOBK/dome2/056/tmp.1.easyaioyactnns:demo2.056:142058 Comparing: /home/easyai/GAMIT_GLOBK/dome2/tables/lfile.easyaioyactnns:demo2.056:142058 /home/easyai/GAMIT_GLOBK/dome2/tables/lfile. 0 differences Checking Rinex file sizes. Zero length files will be deleted Number of rinex file remaining to be processed into x-files is: 3 Removing the existing session.info file before running sh_makexp sh_makexp -expt demo2 -orbt igsg -sp3file igs19376.sp3 -yr 2017 -doy 056 -sess 99 -srin -nav brdc0560.17n -jclock brdc -sinfo 30 00 00 2880 -xver 7 -gnss G -lfreq D Running sh_makexp User has input new session information. Moving old session.info to: session.info.old New Session: makexp demo2 igsg G brdc0560.17n brdc igs19376.sp3 2017 056 7 &#39;&#39; 30 00 00 2880 STATUS :251116:1420:58.0 MAKEXP/makexp: Started MAXEXP Ver. 9.90 2020/12/15 22:57 UTC (Linu Library Ver. 11.53 of 2025/01/31 22:24 UTC (Linux) WARNING:251116:1420:58.0 MAKEXP//lib/rstnfo: Station.info entry LHAZ 2017 56 0 0 0 2017 56 23 59 30 ends early for session but may be ok for station WARNING:251116:1420:58.0 MAKEXP//lib/rstnfo: Station.info entry SHAO 2017 56 0 0 0 2017 56 23 59 30 ends early for session but may be ok for station WARNING:251116:1420:58.0 MAKEXP//lib/rstnfo: Station.info entry URUM 2017 56 0 0 0 2017 56 23 59 30 ends early for session but may be ok for station STATUS :251116:1420:58.0 MAKEXP/makexp: Normal end in Program MAKEXP Running sh_check_sess on g-file gigsg7.056 sh_check_sess: Removing any PRN&#39;s from session.info that are missing from: gigsg7.056 PRN&#39;s in session.info: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 PRN&#39;s in gigsg7.056: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Satellites written to session.info for session 056 are: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Running makej due to remake == Y makej brdc0560.17n jbrdc7.056 &#39;&#39; G STATUS :251116:1420:58.0 MAKEJ/makej: Started MAKEJ 10.30 2022/08/08 21:45 UTC (Linux) Library ver. 11.53 of 2025/01/31 22:24 UTC (Linux) WARNING:251116:1420:58.0 MAKEJ/makej: SP3 file not specified or not available, use the nav-file STATUS :251116:1420:58.0 MAKEJ/makej: Opened navigation file: (Name brdc0560.17n) STATUS :251116:1420:58.0 MAKEJ/makej: Opened J-file: (Name jbrdc7.056) STATUS :251116:1420:58.0 MAKEJ/j_from_e: J-File written for 32 satellites Start: 2017 55 23 59 Stop : 2017 56 23 59 STATUS :251116:1420:58.0 MAKEJ/makej: Normal end in MAKEJ Running sh_check_sess on j-file jbrdc7.056 sh_check_sess: Removing any PRN&#39;s from session.info that are missing from: jbrdc7.056 PRN&#39;s in session.info: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 PRN&#39;s in jbrdc7.056: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Satellites written to session.info for session 056 are: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Running makex: makex demo2.makex.batch 1 0 STATUS :251116:1420:58.0 MAKEX/makex: Started Makex 10.30 2022/08/08 21:45 UTC (Linux) Library ver. 11.53 of 2025/01/31 22:24 UTC (Linux) STATUS :251116:1420:58.0 MAKEX/openf: Opened: demo2.makex.infor FATAL :251116:1420:58.0 MAKEX/openf: Error opening file: demo2.makex.batch ERROR 2 WARNING d-file missing: Creating d-file with all available x-files SH_PREPROC: No zero length xfiles, 0 finite size files, Range - blocks: 2025年 11月 16日 星日 14:20:58 CST List of Xfiles: not_globalrx brus graz sofi List of Xfiles: not_rawlst List of Xfiles: xsite List of Xfiles: not localrx Excluding exlst: xbrus|xgraz|xsofi Checking that all k-files exist Test 0 0 Running fixdrv STATUS :251116:1420:58.0 FIXDRV/fixdrv: Started v.10.55 of 2024/01/06 19:21 UTC (Linux ) FATAL :251116:1420:58.0 FIXDRV/fixdrv: GAMIT.fatal exists: FIXDRV not executed Fatal errors occured in MAKEXP, MAKEX, MAKEK or FIXDRV FATAL :251116:1420:58.0 MAKEX/openf: Error opening file: demo2.makex.batch ERROR 2 FATAL :251116:1420:58.0 FIXDRV/fixdrv: GAMIT.fatal exists: FIXDRV not executed Check the day 056 data
最新发布
11-17
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值