各位,开工大吉,给大家分享个东西:
adb shell "dumpsys window | grep mCurrentFocus"
昨天给一朋友解决一个问题,场景:要在自己应用里跳转到微博并直接到自己公司的专栏。
但是这位朋友遇到的问题是:只知道微博的包名:com.sina.weibo,也就是说只能通过Intent跳转到微博主页。
我通过adb shell "dumpsys window | grep mCurrentFocus"命令可以直接打印出当前页面的包名加class。打印结果是:com.sina.weibo.page.ProfileInfoActivity。
问题又来了,我们只是能通过它来跳转到指定Activity,并没有展示公司的微博信息。我发现微博的wap地址规则是:https://weibo.com/u/xxxxxx,那么我猜测u就是参数(现在主流的地址规则是 RESTful风格),android可能会保持一致,那么我尝试这样做:
Intent intent = new Intent();
ComponentName cmp = new ComponentName("com.sina.weibo", "com.sina.weibo.page.ProfileInfoActivity");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(cmp);
intent.putExtra("u", “6666666”);
startActivity(intent);
结果是,没有成功,那么我按照IT行业不成文的规则尝试了uid,结果成功了。