Mobile 微软团队定制应用程序不';我不能在手机上工作
我已经开发了一个自定义的微软团队应用程序,可以在桌面上正常工作,但在移动应用程序上不工作。 它只显示有关调试的页面 这是进入移动应用程序的选项卡: 我怎样才能解决它? 谢谢 这是桌面应用程序的选项卡: 这是我个人应用程序“我的主页”选项卡代码的一部分:Mobile 微软团队定制应用程序不';我不能在手机上工作,mobile,tabs,microsoft-teams,custom-application,Mobile,Tabs,Microsoft Teams,Custom Application,我已经开发了一个自定义的微软团队应用程序,可以在桌面上正常工作,但在移动应用程序上不工作。 它只显示有关调试的页面 这是进入移动应用程序的选项卡: 我怎样才能解决它? 谢谢 这是桌面应用程序的选项卡: 这是我个人应用程序“我的主页”选项卡代码的一部分: class Tab extends React.Component { constructor(props) { super(props) this.state = { user: null,
class Tab extends React.Component {
constructor(props) {
super(props)
this.state = {
user: null,
loading: true,
isLogged: false,
error: null,
layout: true
}
}
componentDidMount() {
const params = new URLSearchParams(this.props.location.search);
let teamsUser = {
Tid: params.get('tid'),
Aaid: params.get('aaId')
}
getUser(teamsUser).then((userResponse) => {
this.setState({
user: userResponse,
loading: false,
isLogged: true
})
}).catch((error) => {
logger.warn(JSON.stringify(error));
this.setState({
error: error,
loading: false
})
});
}
setLogged = (user) => {
this.setState({
user: user,
isLogged: true,
loading: false
})
}
render() {
let content;
const { user, loading, isLogged, error } = this.state;
if (loading) {
content = <Loading></Loading>
} else if (error) {
throw Error(error)
}
else if (isLogged) {
content = <Catalogue user={user}></Catalogue>
} else {
content = <UserLogin setLogged={this.setLogged}></UserLogin>
}
return (
<Layout>
{content}
</Layout>
);
}
}
export default Tab
我希望上面提到的代码可以帮助您帮助我。我已经用您的代码进行了测试,我用ngrok URL替换了localhost URL,它工作正常。在本地运行应用程序不会授予您访问Team app功能的权限。因此,请您尝试使用ngrok url。我解决了它,我的错误在App.js文件中。在尝试在Microsoft团队之外打开url时,我的路径错误,重定向到了另一个页面(上面发布的页面)。我把它拿走了,一切都好。谢谢大家Hi@Leonardo-请确认您正在开发可配置选项卡还是个人选项卡。还可以使用开发工具在移动设备中调试选项卡,并按照此操作获取更多信息。是的,这是一个个人和消息扩展应用程序。我已经从azure部署了该应用程序,并从我的手机上启动了它。我读到一个可能的原因可能是内容url的编写方式。我的url是这样写的:?tid={tid}&aaId={userObjectId}。我是否需要更改任何内容?请将内容URLl用作
domain/catalog
而不是domain/catalog好吗?tid={tid}&aaId={userObjectId}代码>我将tid和userObjectIdto添加到url中,因为我需要在我的个人应用程序中使用它们来运行。如果我把它们脱掉,我怎么能把它们拿回来?我已经尝试过使用get context函数,但在我的例子中,它在异步时总是很糟糕。我现在尝试过,如果我把url放在浏览器桌面上,它也会返回上面写的相同内容。现在我尝试用手动添加的参数调用url,但响应是相同的。如果我从Visual Studio代码或Microsoft Team桌面应用程序启动应用程序,它将正确运行。我无法理解我的错误在哪里。这已添加到我的租户商店。这可能是错误吗?
{
"$schema": "https://developer.microsoft.com/en-us/json-schemas/teams/v1.9/MicrosoftTeams.schema.json",
"manifestVersion": "1.9",
"version": "1.0.0",
"id": "86af4197-14c8-4439-a440-3d33b4567f54",
"packageName": "com.microsoft.teams.extension",
"developer": {
"name": "Teams App, Inc.",
"websiteUrl": "https://localhost:3000",
"privacyUrl": "https://localhost:3000/privacy",
"termsOfUseUrl": "https://localhost:3000/termsofuse"
},
"icons": {
"color": "color.png",
"outline": "outline.png"
},
"name": {
"short": "AppLocal",
"full": ""
},
"description": {
"short": "Short description for Personal App.",
"full": "Full description of Personal App."
},
"accentColor": "#FFFFFF",
"staticTabs": [
{
"entityId": "index",
"name": "Catalogue",
"contentUrl": "https://localhost:3000/catalogue?tid={tid}&aaId={userObjectId}",
"websiteUrl": "https://localhost:3000/catalogue",
"scopes": [
"personal"
]
},
{
"entityId": "live",
"name": "Live",
"contentUrl": "https://localhost:3000/live?tid={tid}&aaId={userObjectId}",
"websiteUrl": "https://localhost:3000/live",
"scopes": [
"personal"
]
},
{
"entityId": "about",
"scopes": [
"personal"
]
}
],
"permissions": [
"identity",
"messageTeamMembers"
],
"validDomains": [
"localhost:3000",
"localhost"
]
}