在创建启用了proguard的APK时,使用Firebase-UI库(com.firebaseui:firebase-ui:0.3.0
)中的FirebaseRecyclerAdapter时会引发以下异常:
java.lang.RuntimeException: java.lang.NoSuchMethodException: <init> [class android.view.View]
at com.firebase.ui.FirebaseRecyclerAdapter.onCreateViewHolder(FirebaseRecyclerAdapter.java:168)
Run Code Online (Sandbox Code Playgroud)
调试版本(没有proguard)工作正常.谁有Firebase-UI的工作程序配置?
我当前的proguard配置看起来像这样(只有Firebase相关部分):
-optimizationpasses 5
-keepattributes SourceFile,LineNumberTable,Exceptions, Signature, InnerClasses,*Annotation*
-keepnames class ** { *; }
-keep class com.firebase.** { *; }
-keepnames class com.fasterxml.jackson.** { *; }
-keepnames class javax.servlet.** { *; }
-keepnames class org.ietf.jgss.** { *; }
Run Code Online (Sandbox Code Playgroud) android firebase firebase-realtime-database android-proguard firebaseui
我有一个项目列表,每个项目都有一个名称和一个删除按钮.
我的populateViewHolder方法
@Override
protected void populateViewHolder(SubChannelViewHolder viewHolder, final SubChannel model, final int position) {
//passing a clickListener to viewHolder,viewHolder in turn decides to which view it should assign this clickListener.
viewHolder.bindToSubChannel(model, new View.OnClickListener() {
@Override
public void onClick(View view) {
String key= getRef(position).getKey();//Getting the key of the subChannel item
Map<String,Object> childUpdates=new HashMap<>();
//The positions where the subChannel was stored
childUpdates.put("/channels-subChannels/"+mChannelKey+"/" +key+"/subChannelName/",null);
childUpdates.put("/channels/" + mChannelKey+"/subChannels/"+key+"/subChannelName/", null);
childUpdates.put("/user-channels/" +getUid()+"/"+ mChannelKey+"/subChannels/"+key+"/subChannelName/", null);
//setting values at these location as null thereby doing …
Run Code Online (Sandbox Code Playgroud) android firebase android-recyclerview firebase-realtime-database firebaseui
我希望能够在FirebaseUI登录屏幕的三个登录按钮(用于Google,Facebook和电子邮件)后面放置背景图像.FirebaseUI登录是iOS,Android和Web的嵌入式身份验证解决方案.我在使用iOS时遇到了麻烦.
在Github上有一些建议,但还不够.
我首先var customAuthPickerViewController : FIRAuthPickerViewController!
在ViewController.swift文件的顶部附近初始化.
然后,这是我的ViewController.swift文件中的函数,但它不起作用.当我单击注销按钮时,应用程序崩溃,并且没有显示任何背景图像.
// Customize the sign-in screen to have the Bizzy Books icon/background image
func authPickerViewController(for authUI: FIRAuthUI) -> FIRAuthPickerViewController {
customAuthPickerViewController = authPickerViewController(for: authUI)
backgroundImage = UIImageView(image: UIImage(named: "bizzybooksbee"))
backgroundImage.contentMode = UIViewContentMode.scaleAspectFill
customAuthPickerViewController.view.addSubview(backgroundImage)
return customAuthPickerViewController
}
Run Code Online (Sandbox Code Playgroud)
背景图像"bizzybooksbee"是一个通用图像集,其中已经加载了我的Assets.xcassets文件夹中的1x,2x和3x图像.
更新:我可以使用我在下面的评论中给出的代码来显示图像,但它显示了登录按钮,如下图所示.
这是杰里瑞的帮助下的"层次结构"的图像:
我使用FirebaseUI FirebaseListAdapter.加载数据需要一些时间,我想显示一个旋转的圆圈.我可以通过在populateView中将视图可见性设置为不可见来忽略进度条,但如果没有要填充的视图则它不起作用.怎么办呢?
我正在 Android 上使用 Firebase 构建应用程序。我的应用场景如下。看下面的画面。
如您所见,在上面的屏幕中,我显示了基于用户角色的交易列表:Renter 和 Owner。此外,在工具栏上,用户可以轻松过滤任何交易状态,如下面的屏幕所示。
为了实现这种情况,我使用以下结构对我的数据库进行建模:
- transactionsAll:
- transactionID1:
- orderDate: xxx
- role: Renter / Owner
- transactionID2:
....
- transactionsWaitingApproval:
- transactionID1:
- orderDate: xxx
- role: Renter / Owner
Run Code Online (Sandbox Code Playgroud)
问题是,在每个 Fragment 中,我使用 orderByChild 查询只是为了根据每个 Fragment 中的用户角色显示交易列表,无论是 Renter 还是 Owner,就像这样
public void refreshRecyclerView(final String transactionStatus) {
Query transactionsQuery = getQuery(transactionStatus);
//Clean up old data
if (mFirebaseRecyclerAdapter != null) {
mFirebaseRecyclerAdapter.cleanup();
}
mFirebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Transaction, TransactionViewHolder>(Transaction.class, R.layout.item_transaction,
TransactionViewHolder.class, transactionsQuery) {
@Override
public int getItemCount() …
Run Code Online (Sandbox Code Playgroud) []
firebase.database.DatabaseException: Failed to convert value of type java.lang.Long to String
Run Code Online (Sandbox Code Playgroud)
我正在尝试将此数据添加到FirebaserecyclerAdapter并收到此错误
这是数据库参考
databaseReference = FirebaseDatabase.getInstance().getReference().child("questions");
Run Code Online (Sandbox Code Playgroud)
这就是我使用RecyclerViewAdapter的方法
FirebaseRecyclerAdapter<History, HistoryViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<History, HistoryViewHolder>(
History.class, R.layout.history_list_item, HistoryViewHolder.class, databaseReference) {
@Override
protected void populateViewHolder(HistoryViewHolder viewHolder, History model, int position) {
viewHolder.setMyanswer(model.getMyAnswer());
viewHolder.setCorrentAnswer(model.getCorrectAnswer());
viewHolder.setImageUrl(getApplicationContext(), model.getImageUrl());
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
Run Code Online (Sandbox Code Playgroud) 我正在制作一个具有firebase auth功能的应用程序,用于登录和注册.当我搜索时,我遇到了看起来不错的FireBase UI.当我看到auth文档时,create user方法只接受电子邮件ID和密码,但Firebase UI也获取了用户的名字和姓氏.输入的名称有什么作用?它是存储在auth或数据库中的某个位置还是仅用于展示?如果我实施自己的用户界面进行注册,我可以添加更多详细信息而不仅仅是电子邮件ID和密码吗?
我创建了一个应用程序,我可以在其中访问两个波:FirebaseUI Auth和Firebase SDK身份验证(我知道这是非常错误的,我只在某些测试中使用它).好吧,从我添加谷歌访问权限,我无法访问SDK身份验证,应用程序总是崩溃,我不知道为什么.这是我的代码:
public class MainActivity extends AppCompatActivity
{
DialogProgress dialogProgress;
EditText editEmail;
EditText editPassword;
String email;
String password;
FirebaseAuth firebaseAuth;
final int REQUEST_CODE_GOOGLE = 100;
static Activity activity;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
activity = this;
editEmail = (EditText) findViewById(R.id.editEmailA);
editPassword = (EditText) findViewById(R.id.editPasswordA);
firebaseAuth = FirebaseAuth.getInstance();
if(firebaseAuth.getCurrentUser()!=null)
{
Toast.makeText(getApplicationContext(), "Bentornato " + firebaseAuth.getCurrentUser().getEmail().toString(), Toast.LENGTH_SHORT).show();
Intent intent = new Intent(MainActivity.this,ProfileActivity.class);
startActivity(intent);
finish();
}
findViewById(R.id.accediButton).setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
email = editEmail.getText().toString();
password …
Run Code Online (Sandbox Code Playgroud) 只是想知道是否有人在使用firebase auth ui 4.2.0
当我使用 startActivityForResult
我得到错误了...
E / AuthUI:发生登录错误。
com.firebase.ui.auth.FirebaseUiException:保存凭据时出错。在com.firebase.ui.auth.viewmodel.smartlock.SmartLockHandler $ 1.onComplete(SmartLockHandler.java:98)
看起来与smartlock有关,
我看过一些关于git的评论,这似乎是在以前的版本中发生的,但据说已在4.2中修复
还有其他人看到吗?
我有按日期排序的旅行数据(大集合)列表。
现有行为
我将所有行程数据存储到SqlLite Db中。对于添加的每个新数据,我通常会收到fcm通知,并且使用上次更新的时间概念仅同步了添加的新数据。这样,当cx打开应用程序时,他将始终从我的数据库中读取数据,从而节省了读取和网络操作。
我如何在Firestore中实现相同目标?
需要考虑的几个问题: