我们试图实现的是,当用户点击通知时,应该将他/她重定向到某个片段。该目标片段在图中标记为startDestination
(它有自己的.xml
文件)。
要为此创建PendinIntent
,请使用NavDeepLinkBuilder
,如下所示:
// `this` represents the notification service.
NavDeepLinkBuilder(this)
.setGraph(R.navigation.destination_graph)
.setDestination(R.id.start_destination)
.createPendingIntent()
其中R.id.start_destination
是在app:startDestination
的根navigation
标记的R.navigation.destination_graph
属性的startDestination
属性中指定的片段的ID,也就是该图的起始目标。
如果我们尝试使用它,则会得到以下error。如果我们使用标记为android:id
的片段以外的任何其他片段,它将无缝运行。
我们的图表是this。
实际情况是什么?有什么解决方法?
编辑:如果图形与上面的图形相同,但是缺少其BottomNavigationView
属性,并且不包含在Caused by: java.lang.IllegalStateException: unknown destination during deep link: 0
中,则错误更改为Caused by: java.lang.IllegalStateException: unknown destination during deep link: test.ourapp.app:id/messages
(第3行)
EDIT2:以上情况,但是该图这次具有ID,并且未在任何BottomNavigationView中使用。错误变为export class AppComponent {
name = 'Angular 6';
constructor(){
let user = new User({username: 'abc', password: '1234', token: 1});
console.log(user);
}
}
class User {
public username?: string;
public password?: string;
public token?: number;
constructor(values: User) {
Object.assign(this, values);
}
}