react-native-wechat-lib
react-native-wechat-lib copied to clipboard
wx-open-launch-app Android版无法实际启动应用
1.平台 安卓不正常,苹果正常
2.使用的方法 公众号的方法 wx-open-launch-app
- 描述 显示打开成功(h5的成功alert) 但是没有打开APP
类似于这样https://developers.weixin.qq.com/community/develop/doc/00022a36b00828fe625ae673856400?_at=1571345450034
杀死后无法启动
杀死后无法启动
请问下您这个问题解决了吗?如何解决的呢?
杀死后无法启动 已解决,排查发现其实已经唤醒进程了。手动在wxEntryActivity.java 唤醒了。
public class WXEntryActivity extends WeChatHandleActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(WeChatModule.getModules().isEmpty()){
Intent intent = new Intent(WXEntryActivity.this, MainActivity.class);
startActivity(intent);
}else {
WeChatModule.handleIntent(getIntent());
}
finish();
}
}
//react-native-wechat-lib ---> WeChatModule.java 增加getModules方法
public static void handleIntent(Intent intent) {
for (WeChatModule mod : modules) {
mod.api.handleIntent(intent, mod);
}
}
//add
public static ArrayList<WeChatModule> getModules() {
return modules ;
}
没解决,用的链接吊起
杀死后无法启动
请问下您这个问题解决了吗?如何解决的呢?
杀死后无法启动 已解决,排查发现其实已经唤醒进程了。手动在wxEntryActivity.java 唤醒了。
public class WXEntryActivity extends WeChatHandleActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(WeChatModule.getModules().isEmpty()){ Intent intent = new Intent(WXEntryActivity.this, MainActivity.class); startActivity(intent); }else { WeChatModule.handleIntent(getIntent()); } finish(); } } //react-native-wechat-lib ---> WeChatModule.java 增加getModules方法 public static void handleIntent(Intent intent) { for (WeChatModule mod : modules) { mod.api.handleIntent(intent, mod); } } //add public static ArrayList<WeChatModule> getModules() { return modules ; }
extends WeChatHandleActivity会报错 请问怎么解决
杀死后无法启动 已解决,排查发现实际上已经唤醒进程了。手动在wxEntryActivity.java唤醒了。
public class WXEntryActivity extends WeChatHandleActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(WeChatModule.getModules().isEmpty()){ Intent intent = new Intent(WXEntryActivity.this, MainActivity.class); startActivity(intent); }else { WeChatModule.handleIntent(getIntent()); } finish(); } } //react-native-wechat-lib ---> WeChatModule.java 增加getModules方法 public static void handleIntent(Intent intent) { for (WeChatModule mod : modules) { mod.api.handleIntent(intent, mod); } } //add public static ArrayList<WeChatModule> getModules() { return modules ; }
扩展WeChatHandleActivity会报错请问 怎么解决
解决了吗
杀死后无法启动 已解决,排查发现实际上已经唤醒进程了。手动在wxEntryActivity.java唤醒了。
public class WXEntryActivity extends WeChatHandleActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(WeChatModule.getModules().isEmpty()){ Intent intent = new Intent(WXEntryActivity.this, MainActivity.class); startActivity(intent); }else { WeChatModule.handleIntent(getIntent()); } finish(); } } //react-native-wechat-lib ---> WeChatModule.java 增加getModules方法 public static void handleIntent(Intent intent) { for (WeChatModule mod : modules) { mod.api.handleIntent(intent, mod); } } //add public static ArrayList<WeChatModule> getModules() { return modules ; }
扩展WeChatHandleActivity会报错请问 怎么解决
解决了吗
同问怎么处理
你这个确实可以,但是只能唤起首页,没有触发那个onreq
我判断了下是否是冷启动,冷启动延迟发送事件
public class WXEntryActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(WeChatModule.getModules().isEmpty()){
Intent intent = new Intent(WXEntryActivity.this, MainActivity.class);
startActivity(intent);
// 确保rn 初始化后再发唤醒事件,首次启动有闪屏时间
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.schedule(() -> {
WeChatModule.handleIntent(getIntent());
scheduler.shutdown(); // 关闭scheduler
}, 2, TimeUnit.SECONDS);
}else {
WeChatModule.handleIntent(getIntent());
}
finish();
}
}